首页 > 解决方案 > 将 csv 文件作为数据框读取时模式错误

问题描述

试图将 csv 文件读入数据框简单代码

df = spark.read.csv("1.csv")

我有

    df.printSchema()
root
 |-- _c0: string (nullable = true)

我也试试这个

db = spark.read.csv("1.csv", header=True, inferSchema= "True")
db.printSchema()
root
 |--                   id                  |                      date                      |                              cases                               |                      country                      |                       deaths                       |   cities   |    per_cap     | 

在此先感谢您的帮助

标签: pythonapache-sparkpysparkapache-spark-sql

解决方案


显然,您的行分隔符是 pipe |

尝试:

db = spark.read.csv("1.csv", sep='|', header=True, inferSchema= "True")

for col in db.columns:
    db = db.withColumnRenamed(col, col.strip())

推荐阅读