0

我有一个简单的 csv 文件,它是管道分隔的,我可以将其加载到 Databricks 中,然后显示 df 并且它显示得很好。然后我尝试使用格式相同的主数据集并从 SQL 服务器导出。加载后,输出显示它已加载(列出字段名称和它推断的数据类型——尽管所有字符串都不是一个好兆头)

df = spark.read.format("csv").options(header='true', quote='"', delimiter="|",ignoreLeadingWhiteSpace='true',inferSchema='true').load("/mnt/gl/mainfile.csv")

然后我做显示(df),我看不到一个很好的显示。相反,它显示以下内容:

Job 34 View

(Stages: 1/1)

Job 35 View

(Stages: 1/1)

Job 36 View

(Stages: 1/1)

显然 csv 在这里有问题,但我不知道如何解决这个问题 - 我已经很小心如何从 SQL 服务器导出它,所以不确定我会在那里做些什么不同的事情。

4

1 回答 1

1

好的,我解决了。如果您遇到类似问题,则可能意味着您的 csv 格式不正确。使用像 Ron's Editor 这样的文本编辑器打开你的简历,然后直观地检查数据。由于某种原因,在我的数据集上,最后一个字段是 $ 金额,前面有一个 ",但不是在它的末尾。

例如“12344.67

不知道为什么 SQL Server 会这样做(我使用的是导入/导出向导),但我从导出的 csv 中去掉了 " 分隔符,现在它可以正常工作了

于 2019-01-15T20:54:44.463 回答