【发布时间】:2016-11-07 10:26:11
【问题描述】:
我有一个名为 products 的数据框,如下所示:
Credit | Savings | Premium
1 0 1
0 1 1
1 1 0
所有列值都是字符串
我想把它转换成
Credit | Savings | Premium
Credit 0 Premium
0 Savings Premium
Credit Savings 0
在 Spark 中?
我在 Zeppelin 中使用 Spark 1.6.2。
【问题讨论】:
-
正如@RamPrasad 指出的那样尝试了
val udf1 = udf {(presence: String) => if(presence == "1") "Credit" else "0" }。有效!现在我试图通过像这样val udf1 = udf {(presence: String, product:String) => if(presence == "1") product else "0" } df.withColumn("Credit", udf1(sanderProdSmall("Credit"),"Credit"))向udf函数传递一个附加参数来为所有列创建一个udf 发现错误:String("ind_cco_fin_ult2") required: org.apache.spark.sql.Column跨度>
标签: apache-spark dataframe apache-spark-sql