我有一个dfAB
import pandas as pd
import random
A = [ random.randint(0,100) for i in range(10) ]
B = [ random.randint(0,100) for i in range(10) ]
dfAB = pd.DataFrame({ 'A': A, 'B': B })
dfAB
我们可以取分位数函数,因为我想知道列的第75个百分位数:
^{pr2}$但是现在我在dfAB中放了一些nan,然后重新执行这个功能,显然它是不同的:
dfAB.loc[5:8]=np.nan
dfAB.quantile(0.75)
基本上,当我计算dfAB的平均值时,我通过skipna来忽略Na,因为我不希望它们影响我的统计数据(我的代码中故意有很多这样的代码,obv使它们为零没有帮助)
dfAB.mean(skipna=True)
因此,我得到的是分位数函数是否/如何处理NaN?在
是的,这似乎就是
pd.quantile
处理NaN
值的方式。为了说明这一点,您可以将结果与np.nanpercentile
进行比较,后者明确地计算沿指定轴的数据的qth百分位,同时忽略nan值(引自docs,我的重点是):并确保它们是等价的
相关问题 更多 >
编程相关推荐