如何用python中的方程替换数据框中的缺失值

Posted

技术标签:

【中文标题】如何用python中的方程替换数据框中的缺失值【英文标题】:How to replace missing value in a dataframe with an equation in python 【发布时间】:2021-12-01 18:37:46 【问题描述】:

我有下表,其中Bird1和Bird2列中的缺失值必须用线性方程Y(X) = aX + b的结果替换,其中“a”和“b”是常数。

Bird1 Bird2 Bird3
22 33 X0
NaN 4 X1
3 NaN X2
1 NaN X3

结果应如下表所示。如何在python中实现这段代码?

Bird1 Bird2 Bird3
22 33 X0
aX1+b 4 X1
3 aX2+b X2
1 aX3+b X3

【问题讨论】:

【参考方案1】:

这是一种使用pandas.DataFrame.fillna的方法

# define a and b constants, ex.
a = 10
b = 5

df.Bird1.fillna(a*df.Bird3 + b, inplace=True)
df.Bird2.fillna(a*df.Bird3 + b, inplace=True)

【讨论】:

以上是关于如何用python中的方程替换数据框中的缺失值的主要内容,如果未能解决你的问题,请参考以下文章

如何用其他数据框的值填充缺失值

Python:如何用中位数逐列替换缺失值

如何用python中其他数据帧中的条目替换一个数据帧中列的丢失条目?

如何处理python scikit NMF中的缺失值

用计算值替换缺失值

Csr 矩阵:如何用 np.nan 而不是 0 替换缺失值?