You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spark中如何提取DataFrame单行并生成独立DataFrame?

解决方案

首先要修正你给出的原始数据语法错误:元组无法使用键值对形式定义数据,必须改用字典或Spark的Row对象,否则createDataFrame会直接报错。

修正后的基础代码示例

from pyspark.sql import Row

# 方式1:使用字典构造数据
raw_data = [
    {"name": "Bob", "age": 26},
    {"name": "Alice", "age": 29}
]

# 方式2:使用Spark Row对象构造数据
raw_data = [
    Row(name="Bob", age=26),
    Row(name="Alice", age=29)
]

# 创建DataFrame
raw_data_df = spark.createDataFrame(raw_data)

提取Alice所在行的简便方法

直接用filter(或where,两者功能完全一致)方法过滤name字段为Alice的记录,得到的就是单行DataFrame:

# 方式1:使用列对象条件过滤
alice_df = raw_data_df.filter(raw_data_df.name == "Alice")

# 方式2:使用字符串表达式过滤
alice_df = raw_data_df.filter("name = 'Alice'")

你可以通过show()方法验证结果:

alice_df.show()

输出结果:

+-----+---+
| name|age|
+-----+---+
|Alice| 29|
+-----+---+

内容的提问来源于stack exchange,提问作者coderodde

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 21:55:54