Spark - 从 DataFrame 中提取单个值

Spark - extracting single value from DataFrame

我有一个 Spark DataFrame 查询,保证 return 具有单个 Int 值的单列。从结果 DataFrame 中提取此值作为 Int 的最佳方法是什么?

这可以解决您的问题。

df.map{
    row => row.getInt(0)
}.first()

您可以使用head

df.head().getInt(0)

first

df.first().getInt(0)

查看 DataFrame scala 文档了解更多详情

Pyspark中,如果dataframe是单个实体,则可以简单地获取第一个元素,并以one column作为响应,否则,将是整个row返回,那么你必须得到 dimension-wise 响应,即 2 维列表,如 df.head()[0][0]

df.head()[0]

如果我们的 spark 数据帧为:

+----------+
|_c0       |
+----------+
|2021-08-31|
+----------+

x = df.first()[0]
print(x)

2021-08-31