计算缺失数据的数据框的平均值

Posted

技术标签:

【中文标题】计算缺失数据的数据框的平均值【英文标题】:Calculate mean of dataframe with missing data 【发布时间】:2021-04-24 08:51:27 【问题描述】:

我有一个数据框,其中包含一些缺少数据的单元格,而这些单元格具有 inf。例如:

a       b       c
2       3       4
2       3       inf

我想要这个结果:

2        3       4

有没有办法使用均值函数或求整个数据框的平均值。

【问题讨论】:

【参考方案1】:

让我们用mask infnan 来做吧

df.mask(np.isinf(df)).mean()
Out[63]: 
a    2.0
b    3.0
c    4.0
dtype: float64

【讨论】:

【参考方案2】:

这是一个没有 NumPy 的解决方案:

df.replace(float("inf"), float("nan")).mean(axis = 0)

您还可以替换-inf 和任何其他值:

df.replace([float("inf"), float("-inf")], float("nan")).mean(axis = 0)

【讨论】:

【参考方案3】:

numpy.nanmean

np.nanmean(df,axis=0)

You can also replace inf with NaN using numpy

【讨论】:

以上是关于计算缺失数据的数据框的平均值的主要内容,如果未能解决你的问题,请参考以下文章

R语言-均值填充缺失值

R语言vtreat包自动处理dataframe的缺失值计算数据列的均值和方差并基于均值和方差信息对数据列进行标准化缩放计算所有数据列的均值和方差对所有数据列进行标准化缩放

用滚动平均值或其他插值替换 NaN 或缺失值

根据数据框的重复列值制作具有平均值(平均值)的表[重复]

关于在矩阵中计算均值并将其转换为 R 中的数据框的问题

Pyspark Dataframe Imputations - 根据指定条件用列平均值替换未知和缺失值