将数据框中的Array <string>列拆分为具有这些单独字符串的不同列

时间:2017-06-16 11:30:48

标签: java sql apache-spark apache-spark-mllib

实施例 在数据帧的列中,条目是[a,b,c,d],它是一个字符串数组。 我想制作包含这些单独字符串的4个新闻列。 如果列中的另一个条目是[a,b,c] 然后对于该条目,三列将包含a,b,c,第四列将为空(null)。 我想用Java做到这一点。 感谢

//首先将数组转换为字符串UniGrams.withColumn("Unigrams",UniGrams.col("Unigrams").cast(DataTypes.StringType));

上述步骤实际上并没有转换为字符串,因此下面的步骤也不起作用

//然后用逗号作为分隔符

将字符串拆分成列
UniGrams.selectExpr("redemptionAddress_locality_name","words","words2","split(Unigrams, ',')[0] as Unigrams1","split(Unigrams, ',')[1] as Unigrams2");

0 个答案:

没有答案