Pandas fillna 不是 fillign na values

问题描述 投票:0回答:1

尝试以下列方式填充 na 值:

df['column'].fillna(value:'value',inplace=True)

我打印之前和之后的值并得到以下结果:

['11', '12', '81', '21', '22', nan, '41', '71', '10', '23', '02', '20', '19', '72', '24', '53', '60', '49']

[<class 'str'>, <class 'str'>, <class 'str'>, <class 'str'>, <class 'str'>, <class 'float'>, <class 'str'>, <class 'str'>, <class 'str'>, <class 'str'>, <class 'str'>, <class 'str'>, <class 'str'>, <class 'str'>, <class 'str'>, <class 'str'>, <class 'str'>, <class 'str'>]
['11', '12', '81', '21', '22', nan, '41', '71', '10', '23', '02', '20', '19', '72', '24', '53', '60', '49']

[<class 'str'>, <class 'str'>, <class 'str'>, <class 'str'>, <class 'str'>, <class 'float'>, <class 'str'>, <class 'str'>, <class 'str'>, <class 'str'>, <class 'str'>, <class 'str'>, <class 'str'>, <class 'str'>, <class 'str'>, <class 'str'>, <class 'str'>, <class 'str'>]

很明显,这些值被识别为 NaN 值,但填充不是填充 nan 浮点数。

python pandas
1个回答
0
投票

您可以使用

pd.to_numeric

value = 9999
df['column'] = pd.to_numeric(df['column'], errors='coerce').fillna(value)

如果您确定只有整数,您可以附加

.astype(int)

© www.soinside.com 2019 - 2024. All rights reserved.