获取 Spark Dataframe 中特定单元格的值

use*_*698 6 dataframe apache-spark apache-spark-sql pyspark

我有一个 Spark 数据框,有 1 行和 3 列,即 start_date、end_date、end_month_id。我想将第一个单元格中的值检索到变量中,并使用该变量来过滤另一个数据帧。

在此输入图像描述

我想将“2019-01-01”检索到变量中。我怎么做?
这是我到目前为止所拥有的:

start_date = df1[0];
df2.filter(df2.date_reported >= start_date)
Run Code Online (Sandbox Code Playgroud)

我是初学者。

小智 6

如果 df1 是 Spark DataFrame,则使用collect()函数获取相同的数据。例如,

df1.collect()[Row number][Column number][0][0]
Run Code Online (Sandbox Code Playgroud)


Apu*_*dey 3

尝试这个。take 为您提供一个行数组,您可以根据 Row 对象中的列名称提取值。

val start_date = df1.take(1)(0).getAs[String]("start_date")
Run Code Online (Sandbox Code Playgroud)

  • 是的。你是对的。 (2认同)