【发布时间】:2018-09-05 13:34:15
【问题描述】:
这是df的数据框:
org.apache.spark.sql.DataFrame = [year_artist: string, count: bigint]
df.show() 返回:
+--------------------+-----+
| year_artist|count|
+--------------------+-----+
| 1945_Dick Haymes| 5|
|1949_Ivory Joe Hu...| 1|
| 1955_Tex Ritter| 1|
我需要将第一列分成两个独立的部分,年份和艺术家。 我在想这样的事情:Spark map dataframe using the dataframe's schema.
但是,以下在我的实现中不起作用:
df.rdd.map(row => (row(0).getAs[String].split("_")(0), row(0).getAs[String].split("_")(1)))
也许有一种方法可以在不转换为 RDD 的情况下实现它?
【问题讨论】:
标签: scala apache-spark apache-spark-sql