import pandas as pd import numpy as np qq=np.array([[1,2,3,np.nan],[3,4,np.nan,5],[6,np.nan,5,7],[6,7,8,0]])
结果:
array([[ 1., 2., 3., nan],
[ 3., 4., nan, 5.],
[ 6., nan, 5., 7.],
[ 6., 7., 8., 0.]])
np.mean(qq,axis=0)
这样输出的是:array([ 4., nan, nan, nan]),即每列的均值,出现空值的列均值也为Nan
np.nanmean(qq,axis=0)
这样输出的是:array([4. , 4.33333333, 5.33333333, 4. ]),即忽略了空值进行均值
qq=pd.DataFrame(qq) qq.mean(axis=0)
如果转为dataframe,再求均值,则可以直接得到忽略空值的均值:
| 0 | 1 | 2 | 3 | |
|---|---|---|---|---|
| 0 | 1.0 | 2.0 | 3.0 | NaN |
| 1 | 3.0 | 4.0 | NaN | 5.0 |
| 2 | 6.0 | NaN | 5.0 | 7.0 |
| 3 | 6.0 | 7.0 | 8.0 | 0.0 |
结果为: 0 4.000000 1 4.333333 2 5.333333 3 4.000000 dtype: float64
ps:最大最小中值等均适用



