我对此感到困惑。对于fillna,我应该使用df.fillna(df.mean()),但是我犯了一个错误,就是去掉了括号df.fillna(df.mean)
我得到了完全不同的结果。fillna的文档确实接受scalar, dict, Series, or DataFrame,但是当我输入:type(df.mean)时,我得到了一个method作为type,这没有任何意义。这不是任何一个scalar, dict, Series, or DataFrame接受的填料。
这里到底发生了什么?我希望有人能帮我启发一下。
非常感谢!
发布于 2021-12-27 15:03:46
我认为该方法本身用作填充值,用作标量。
df = pd.DataFrame({'a':[1, np.nan]})
df.fillna(df.mean)所以这里没什么奇怪的:
a
0 1
1 <bound method DataFrame.mean of a\n0 1.0...就像你做df.fillna(lambda x: "some func")一样
https://stackoverflow.com/questions/70497109
复制相似问题