使用 fillna 在 Pandas 中用列表填充空值

2024-03-16

Given a pd.Series,我想用列表替换空值。也就是说,给定:

import numpy as np
import pandas as pd
ser = pd.Series([0,1,np.nan])

我想要一个会返回的函数

0        0
1        1
2    [nan]

但如果我尝试使用自然函数,即fillna https://pandas.pydata.org/pandas-docs/stable/generated/pandas.DataFrame.fillna.html:

result = ser.fillna([np.nan])

但我得到了错误

类型错误:“值”参数必须是标量或字典,但您传递了“列表”

有什么建议可以实现这一点的简单方法吗?


Use apply, 因为fillna仅使用标量:

print (ser.apply(lambda x: [np.nan] if pd.isnull(x) else x))
0        0
1        1
2    [nan]
dtype: object
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 fillna 在 Pandas 中用列表填充空值 的相关文章

随机推荐