【发布时间】:2021-02-04 03:32:52
【问题描述】:
对不起,类似的帖子,但这是同一代码的不同问题。我正在尝试估算所有这些列:
('exact_age','lnght_of_resd','acct_tenure_mnth_nbr','acct_ttce_mnth_nbr','tot_promo_amt', 'tot_rev_amt','int_base_pkg_speed','int_mx_elgbl_speed')
使用下面的代码,但只计算第一列。我猜它与first() 函数有关。但是,我不知道如何修改代码,以便它可以遍历所有列。当我运行此代码时,exact_age 被正确估算,但其他代码不正确。任何帮助表示赞赏。谢谢
removeAllDF = df_data.na.drop()
imputeDF = df_data['exact_age','lnght_of_resd','acct_tenure_mnth_nbr','acct_ttce_mnth_nbr','tot_promo_amt','tot_rev_amt','int_base_pkg_speed','int_mx_elgbl_speed']
for x in imputeDF.columns:
meanValue = removeAllDF.agg(avg(x)).first()[0]
print(x, meanValue)
df_data = df_data.na.fill(meanValue, (x))
df_data.show()
【问题讨论】:
-
当我尝试时,这似乎有效。也许这是一个数据问题。你看到了什么错误?
标签: apache-spark pyspark apache-spark-sql pyspark-dataframes