给定一个pd.Series
,我想用一个列表替换空值。也就是说,给定:
import numpy as np
import pandas as pd
ser = pd.Series([0,1,np.nan])
我想要一个可以返回的函数
0 0
1 1
2 [nan]
但是,如果我尝试为此使用自然函数,即
fillna
:result = ser.fillna([np.nan])
但我得到了错误
有什么简单的方法可以达到这个目的吗?
最佳答案
使用apply
,因为fillna
仅适用于标量:
print (ser.apply(lambda x: [np.nan] if pd.isnull(x) else x))
0 0
1 1
2 [nan]
dtype: object
关于python-3.x - 使用fillna在Pandas中用列表填充空值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47267375/