【问题标题】:Spark- consecutive pipe delimiters being read as oneSpark-连续管道分隔符被读为一个
【发布时间】:2020-02-27 13:43:57
【问题描述】:

我有一个包含空行列的文件,例如:

1|2|abc||||random|12|||

1|2||||random|12|||151|

在分隔符选项设置为 | 的情况下在 spark 中读取此内容,连续的管道被读取为一个 |并且数据向左移动,或者在某些情况下我的插入失败。

我找到了以下相关链接,但没有关于 spark 的内容。 https://kb.iu.edu/d/bcjf

如何在 spark 中正确读取这样的文件?

【问题讨论】:

    标签: file apache-spark delimiter


    【解决方案1】:

    确保您正在使用csv 格式读取文件并将分隔符选项指定为"|"

    Example:

    spark.read.option("delimiter","|").format("csv").load("t.txt").show()
    +---+---+----+----+----+------+------+----+----+----+----+
    |_c0|_c1| _c2| _c3| _c4|   _c5|   _c6| _c7| _c8| _c9|_c10|
    +---+---+----+----+----+------+------+----+----+----+----+
    |  1|  2| abc|null|null|  null|random|  12|null|null|null|
    |  1|  2|null|null|null|random|    12|null|null| 151|null|
    +---+---+----+----+----+------+------+----+----+----+----+
    

    似乎没有缺少列顺序!

    【讨论】:

      猜你喜欢
      • 2013-08-19
      • 2020-02-25
      • 2014-02-13
      • 2018-05-16
      • 2018-01-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多