gpt4 book ai didi

java - 如何在 Spark 中打印 DataFrame 列的唯一值?

转载 作者:行者123 更新时间:2023-11-30 06:48:35 24 4
gpt4 key购买 nike

我从 Parquet 文件创建一个 DataFrame,如下所示:

DataFrame parquetFile = sqlContext.read().parquet("test_file.parquet");
parquetFile.printSchema();
parquetFile.registerTempTable("myData");
DataFrame data_df = sqlContext.sql("SELECT * FROM myData");

现在我想打印出名为 field1 的列的所有唯一值。

我知道在使用 Python 的情况下,可以运行 import pandas as pd 然后将 data_df 转换为 Pandas DataFrame,然后使用 独特的()

但是我怎样才能用 Java 实现呢?

最佳答案

很简单,你可以在SQL查询中使用distinct函数

DataFrame data_df = sqlContext.sql("SELECT DISTINCT(field1) FROM myData");

这是一个例子:

val myData = Seq("h", "h", "d", "b", "d").toDF("field1")
myData.createOrReplaceTempView("myData")
val sqlContext = spark.sqlContext
sqlContext.sql("SELECT DISTINCT(field1) FROM myData").show()

这给出了以下输出:

+------+                                                                        
|field1|
+------+
| h|
| d|
| b|
+------+

希望这对您有所帮助,Best Regrads

关于java - 如何在 Spark 中打印 DataFrame 列的唯一值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44065335/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com