Apache Spark 是一个快速、通用的大规模数据处理引擎,支持多种编程语言,包括 Python(通过 PySpark)和 SQL(通过 Spark SQL)。PySpark 和 Spark SQL 允许用户进行分布式数据处理和分析。
假设我们有一个 DataFrame,我们想要选择不在某个组中的所有列或特定列。
假设我们有一个 DataFrame df
,其中包含以下列:id
, name
, group
。我们想要选择不在 group
为 A
的所有列。
from pyspark.sql import SparkSession
# 创建 SparkSession
spark = SparkSession.builder.appName("example").getOrCreate()
# 示例数据
data = [
(1, "Alice", "A"),
(2, "Bob", "B"),
(3, "Charlie", "A"),
(4, "David", "C")
]
# 创建 DataFrame
columns = ["id", "name", "group"]
df = spark.createDataFrame(data, columns)
# 选择不在 group 为 A 的所有列
result = df.filter(df.group != "A")
# 显示结果
result.show()
from pyspark.sql import SparkSession
# 创建 SparkSession
spark = SparkSession.builder.appName("example").getOrCreate()
# 示例数据
data = [
(1, "Alice", "A"),
(2, "Bob", "B"),
(3, "Charlie", "A"),
(4, "David", "C")
]
# 创建 DataFrame
columns = ["id", "name", "group"]
df = spark.createDataFrame(data, columns)
# 注册 DataFrame 为临时视图
df.createOrReplaceTempView("people")
# 使用 SQL 语句选择不在 group 为 A 的所有列
result = spark.sql("SELECT * FROM people WHERE group != 'A'")
# 显示结果
result.show()
filter
方法或 SQL 语句过滤掉不需要的数据。show
方法显示结果。通过上述步骤,我们可以选择不在某个组中的所有列或特定列。
领取专属 10元无门槛券
手把手带您无忧上云