如何更改csv列中的数据类型
How to change data type in csv column
通过 SQL 使用数据块,我必须将我的 csv 数据集导入 table 并使用它分析数据。
我的问题是在导入 csv 数据集后,所有列都是字符串类型,但其中一些需要是数字。我该如何解决?
如何定义 csv 文件的列类型?我尝试在 xlsx 中转换文件并设置数字类型,但无法在 csv 中再次转换(或者我不知道如何转换)。
感谢您的帮助
PS:databricks 只需要 csv 文件而不是 xlsx 或类似文件。
如果您在 Azure 上使用 Databricks,当您 select“使用 UI 创建 table”时,您应该可以选择数据类型对于下面的屏幕截图 A 中的每一列。
如果您通过一些 Python Spark 代码导入 table,应该有一个选项,infer_schema , 供您设置。如果将其设置为“true”,则所有仅包含数字的列都将具有适当的数字数据类型。
file_location = "/FileStore/shared_uploads/xxx/dbo_project.csv"
file_type = "csv"
infer_schema = "true"
first_row_is_header = "false"
delimiter = ","
df = spark.read.format(file_type) \
.option("inferSchema", infer_schema) \
.option("header", first_row_is_header) \
.option("sep", delimiter) \
.load(file_location)
截图A
通过 SQL 使用数据块,我必须将我的 csv 数据集导入 table 并使用它分析数据。 我的问题是在导入 csv 数据集后,所有列都是字符串类型,但其中一些需要是数字。我该如何解决?
如何定义 csv 文件的列类型?我尝试在 xlsx 中转换文件并设置数字类型,但无法在 csv 中再次转换(或者我不知道如何转换)。
感谢您的帮助
PS:databricks 只需要 csv 文件而不是 xlsx 或类似文件。
如果您在 Azure 上使用 Databricks,当您 select“使用 UI 创建 table”时,您应该可以选择数据类型对于下面的屏幕截图 A 中的每一列。
如果您通过一些 Python Spark 代码导入 table,应该有一个选项,infer_schema , 供您设置。如果将其设置为“true”,则所有仅包含数字的列都将具有适当的数字数据类型。
file_location = "/FileStore/shared_uploads/xxx/dbo_project.csv"
file_type = "csv"
infer_schema = "true"
first_row_is_header = "false"
delimiter = ","
df = spark.read.format(file_type) \
.option("inferSchema", infer_schema) \
.option("header", first_row_is_header) \
.option("sep", delimiter) \
.load(file_location)
截图A