這是我想使用 Java 和 Spark 實作的目標。
我有一個列名陣列,如下所示。
String[] col_arr = new String[] { "colname_1", "colname_2"};
我想通過在 concat 函式中傳遞陣列(列名作為陣列元素)來連接 2 列。
Dataset<Row> new_abc = dataset_abc.withColumn("new_concat_Column", concat(col_arr));
下面的代碼正在作業,但我不想顯式傳遞列名,而是想將包含列名的陣列作為陣列元素傳遞。
Dataset<Row> new_abc = dataset_abc.withColumn("new_concat_Column", concat(col("colname_1"), col("colname_2")));
uj5u.com熱心網友回復:
您可以將列陣列傳遞Column[]給 concat 函式,如下所示:
Column[] columnArray = {
col("column1"), col("column2")
};
Dataset<Row> concatenatedDS = dataset.withColumn("concatenated_column", concat(columnArray));
如果你只有一個陣列,你可以用它動態String[]構建一個陣列。Column[]
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/492246.html
