我正在将所有列一一传递给userJourney数据帧,其工作原理如下:
var transformedUserJourney: DataFrame = userJourney.selectExpr("userid", "time", "channel")
但是如何在一个字符串中传递数据框的所有列,例如
var str :string =
"\"userid \" +","\"time\" + ",\"channel\"var transformedUserJourney: DataFrame = userJourney.selectExpr(str )
使用:
- df.columns,它是一个带有列名的数组[字符串]
- :_* 运算符(将数组转换为 vararg)
例如。
city_df.selectExpr( city_df.columns :_* )
在Java中,下面的工作:
Dataset ds = ds.alias("x");
Dataset ds1 = ds.selectExpr("x.*");
x 是别名,您可以使用类似于 SQL 语法的 x.*。