在PySpark中,可以使用fillna()
方法为数据框中的特定列填充NA值。fillna()
方法接受一个字典作为参数,其中键表示要填充的列名,值表示要填充的值。以下是一个示例代码:
from pyspark.sql import SparkSession
from pyspark.sql.functions import col
# 创建SparkSession
spark = SparkSession.builder.getOrCreate()
# 创建示例数据框
data = [("Alice", 25, None), ("Bob", None, 80), ("Charlie", 30, 90)]
df = spark.createDataFrame(data, ["Name", "Age", "Score"])
# 填充Age列的NA值为0
df = df.fillna({"Age": 0})
# 填充Score列的NA值为-1
df = df.fillna({"Score": -1})
# 显示填充后的数据框
df.show()
输出结果如下:
+-------+---+-----+
| Name|Age|Score|
+-------+---+-----+
| Alice| 25| -1|
| Bob| 0| 80|
|Charlie| 30| 90|
+-------+---+-----+
在上述示例中,我们使用fillna()
方法分别为"Age"列和"Score"列填充了NA值。对于"Age"列,我们填充为0;对于"Score"列,我们填充为-1。
推荐的腾讯云相关产品是腾讯云的数据计算服务TencentDB for Apache Spark,它提供了强大的分布式数据处理能力,可用于大规模数据处理和分析任务。您可以通过以下链接了解更多信息:TencentDB for Apache Spark。
领取专属 10元无门槛券
手把手带您无忧上云