【发布时间】:2018-08-22 13:13:31
【问题描述】:
我有一个只有一列的 rdd。每列都是一个字符串,表示由| 分隔的条目列表。例如:
col_1
a|b|c|d
q|w|e|r
我想把它转成dataframe,所以是这样的:
col_1 | col_2 | col_3 | col_4
a b c d
q w e r
列数未知,并且不需要标题(它们可以只是默认的列名)。
我试过了:
.map(i => i.split("|")).toDF()
但是,这只是返回一个作为值数组的列,而不是实际拆分为列。这样做的最终目标是将其写入镶木地板文件。
一种解决方案是将其写入文本文件,然后使用 Spark 将其作为带有我给定分隔符的 csv 读取,然后将其写入 parquet 文件。但这是一种糟糕的方法,必须有更好的方法来做到这一点。
【问题讨论】:
-
输入是
RDD还是DataFrame? -
@TzachZohar 输入是一个 RDD。
标签: scala apache-spark