我有以下数据框,我想计算按列的最小值
import pandas as pd
dat1 = pd.DataFrame({'col1' : [1,2,3,4], 'col2' : [-3, np.nan, 4, 4]})
dat1.min(axis = 1, numeric_only = True)
但是对于第二行,我期待
nan
值,因为 col2
有 nan
,但是我得到 2,这是 col1
的值。
您能帮忙改正上面的代码吗?
默认情况下,NaN 会被忽略,您应该使用
skipna=False
(请参阅 min
的文档):
dat1.min(axis=1, numeric_only=True, skipna=False)
输出:
0 -3.0
1 NaN
2 3.0
3 4.0
dtype: float64