Pyspark:我想要按列的平均值填写fillna值并将其替换

时间:2019-05-20 16:15:31

标签: python pyspark

我想用其他平均值填充NaN值,但avg函数不起作用。
我尝试了就地价值。那也不行。

如何用平均值填充值并将其替换?

这是我的任务。

数据框:以两种排序方式列出每个room_id,host_id以及总分
1)索引=(room_id,host_id)
2)栏=总得分:总体满意度+评论* 0.378
3)输出= 1.以升序排序total_score 2.以降序排序total_score = sorted_total_score_ascend.csv,sorted_total_score_descend.csv

我应该在pyspark DataFrame或Spark SQL中对其进行编码。

data image

如何用平均值填充值并将其替换?

请帮助我...

    import findspark
    findspark.find()
    findspark.init()
    import pyspark
    sc = pyspark.SparkContext(appName='P1')
    file_name ="/home/User/venv/assignment/practice/0419/airbnb.csv"
    df_sigh =sqlContext.read.format("csv").option("header","true").option("inferSchema","true").load(file_name)
    import pyspark.sql.functions as sqlf

    df_sigh.fillna({'overall_satisfaction': sqlf.avg('overall_satisfaction')})

TypeError:列不可迭代

0 个答案:

没有答案