当前位置: 首页 > 知识库问答 >
问题:

Databricks Spark CSV标题分隔符

潘楚
2023-03-14

csv文件的格式为^A作为列分隔符,^B作为行分隔符/记录分隔符。因此,我使用databricks spark csv库以以下方式创建数据帧:

val dataFrame = cassSqlContext.read.format("com.databricks.spark.csv")
      .option("header", "true").option("inferSchema", "true")
      .option("delimiter", "\u0001").load(file)

看看spark csv的文档,关于headers选项,它说:当设置为true时,第一行文件将用于命名列,而不会包含在数据中。所有类型都将假定为字符串。默认值为false。

但是,我们没有使用\n,而是使用^B。那么,有没有办法告诉spark-csv库我们的标头也有一个分隔符,而不是默认的\n

共有1个答案

申屠项明
2023-03-14

我能够通过为我的brakContext添加以下行来使上述代码正常工作:

sparkContext.hadoopConfiguration.set("textinputformat.record.delimiter",")

 类似资料:
  • 在iOS 15中,在节头和第一个单元格之间添加分隔符: 如何隐藏或删除该分隔符? 几点注意事项 标题是从 查看视图调试器时,我可以看到额外的分隔符实际上是第一个单元格的子视图,它现在有一个顶部分隔符和一个底部分隔符。 除了设置更改单元格分隔符的插入外,这是一个完全标准的表视图,没有任何自定义设置

  • 如果使用带有单个参数的第一个StringToknenizer构造函数并编写示例程序,结果是和12个令牌。它返回没有任何空格的整个句子。我明白这是怎么回事。 如果使用带有两个参数的第二个构造函数,我的测试程序将得到每个单词有空格,但没有逗号,只有两个标记。我认为它应该同时将空格和逗号作为标记分隔符计算,但它将逗号之前的所有内容作为1标记计算,将逗号之后的所有内容作为1标记计算。这部分让我很困惑。 我

  • 问题内容: 我想将标题添加到制表符分隔的文件中,但是我不确定如何在Linux中一行执行该操作。 让我们说我的文件是: 现在我想添加一个标头,上面写着: 我将如何在linux的一行中做到这一点?我对awk,sed,cat等没问题,但是对perl一点都不熟悉。 问题答案: 没有像“ append”运算符这样的“ prepend”运算符,但是您可以将标头写入临时文件,然后将文件内容复制到临时文件中,然后

  • 我想在没有空格的标题中查找并分隔单词。 之前: 这是一个示例标题黑色-世界2019T.E.S.T.(测试)“测试”“测试”[测试] 之后: 这是一个例题标题HELLO-WORLD 2019 T.E.S.T .(测试)[测试]“测试”'测试' 我正在寻找一个可以执行以下操作的正则表达式规则。 我想我会识别每个以大写字母开头的单词。 但也要保留所有大写单词,以免将它们分隔为。 附加规则: 如果字母与数

  • 有没有办法在gridview中显示行之间的(水平)分隔线? 我试着在每个网格项目下面放置一个小的分隔线,但是这不是一个解决方案,因为当一行没有完全填满项目时,它不会跨越整行。 有没有办法在每一行之间添加一个图像?我只能找到改变行之间空间的方法。

  • 我的问题是:有没有一个分析器能够检测标记周围的分隔符(在我们的示例中),或者有没有一个分析器能够检测多字结构? 恐怕我们必须创建自己的分析器,但我不太知道该从哪里开始。