简体   繁体   English

Spark DataFrame-使用Java API选择列列表

[英]Spark DataFrame - select list of columns using Java API

I'm trying to select List of columns from the DataFrame using Java API. 我正在尝试使用Java API从DataFrame中选择列列表。

Sample Java Code: 示例Java代码:

List<String> colList = Arrays.asList(new String[] { "column1", "column2", "column3" });
df.selectExpr((String[])colList.toArray()).show();

In Java API, I have to use selectExpr instead of select . 在Java API中,我必须使用selectExpr而不是select Is there any other way of selecting list of columns using Java API. 还有其他使用Java API选择列列表的方法。

But in Scala, I can do something like below. 但是在Scala中,我可以执行以下操作。

Sample Scala Code: 示例Scala代码:

val colList = List("column1", "column2", "column3")
df.select(colList.head, colList.tail: _*).show

You can use array of String : 您可以使用String数组:

String[] colList =  { "column1", "column2", "column3" };
String first = colList[0];
String[] rest =  Arrays.copyOfRange(colList, 1, colList.length);

logData.select(first, rest);

or array of Column : Column数组:

import static org.apache.spark.sql.functions.col;
import org.apache.spark.sql.Column;

Column[] colList =  { col("column1"), col("column2"), col("column3") };
logData.select(colList);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM