无法识别所有数据类型

时间:2019-05-17 06:19:28

标签: python hadoop

在对csv文件进行性能分析时,无法区分数据类型,仅将每个文件都作为字符串提供

我尝试了以下代码

rdd = sc.textFile(file)
header = rdd.first()
rdd = rdd.filter(lambda x: x != header)
rdd1 = rdd.mapPartitions(lambda x: csv.reader(x))
spark_df = rdd1.toDF(header.split(','))

完成CSV文件的分析后,我得到的所有文件仅是字符串,无法标识为数字,日期

1 个答案:

答案 0 :(得分:1)

函数textFile()不支持架构推断。 如果您正在从结构化的源(例如csv)中读取内容,请改用sc.read.csv,它支持架构推断。 您的代码为:

df = sc.read.option("header", "true").option("inferSchema", "true").csv(file)