gpt4 book ai didi

csv - 为什么读取带有空值的 csv 文件会导致 IndexOutOfBoundException?

转载 作者:行者123 更新时间:2023-12-03 03:39:34 26 4
gpt4 key购买 nike

我有一个具有以下结构的 csv 文件

Name | Val1 | Val2 | Val3 | Val4 | Val5
John 1 2
Joe 1 2
David 1 2 10 11

我可以将其加载到 RDD 中。我尝试创建一个架构,然后从中创建一个 Dataframe 并收到 indexOutOfBound 错误。

代码是这样的......

val rowRDD = fileRDD.map(p => Row(p(0), p(1), p(2), p(3), p(4), p(5), p(6) )

当我尝试对 rowRDD 执行操作时,出现错误。

非常感谢任何帮助。

最佳答案

这不是您问题的答案。但它可能有助于解决您的问题。

从问题中我看到您正在尝试从 CSV 创建数据框。

使用 CSV 创建数据框可以使用 spark-csv 轻松完成包

通过下面的spark-csv,scala代码可以用来读取CSVval df = sqlContext.read.format("com.databricks.spark.csv").option("header", "true").load(csvFilePath)

对于您的示例数据,我得到了以下结果

+-----+----+----+----+----+----+
| Name|Val1|Val2|Val3|Val4|Val5|
+-----+----+----+----+----+----+
| John| 1| 2| | | |
| Joe| 1| 2| | | |
|David| 1| 2| | 10| 11|
+-----+----+----+----+----+----+

您还可以使用最新版本推断Schema。看这个answer

关于csv - 为什么读取带有空值的 csv 文件会导致 IndexOutOfBoundException?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32304338/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com