【发布时间】:2019-07-22 07:21:17
【问题描述】:
我有两个数据框,df1 和 df2,每个数据框的列数和列名相同,但行数不同。基本上,df2 中有很多列都具有 0 值。
我想要完成的是 df2 中所有值为零的列都被替换为相同列名的平均值(平均值)(如 df1 中)。
所以,如果 df1 的结构如下:-
Column1 Column2 ------ Column n
0.4 2.3 1.7
0.7 2.5 1.4
0.1 2.1 1.2
而 df2 的结构如下:-
Column1 Column2 ------ Column n
0 2.3 1.7
0 2.5 1.4
0 2.1 1.2
我想用 df1 中映射的同一列的平均值替换 column1(以及 df2 中的任何其他全零列)。 所以,最后,df2 看起来像:-
Column1 Column2 ------ Column n
0.4 2.3 1.7
0.4 2.5 1.4
0.4 2.1 1.2
(df2 的第 1 列中的所有零值都替换为 df1 中第 1 列的平均值。
我对此很陌生,并且检查了其他选项,例如 fillna() 和 replace(),但无法完全完成我想要的。非常感谢这方面的任何帮助。
【问题讨论】: