Rub*_*nez 4 python series dataframe pandas
我需要将该列的 NaN 值更改'FocusColumn'
为空列表。
我尝试这样做:
df['FocusColumn'].fillna([],inplace=True)
Run Code Online (Sandbox Code Playgroud)
但它引发了我以下错误:
337 if validate_scalar_dict_value and isinstance(value, (list, tuple)):
338 raise TypeError(
339 '"value" parameter must be a scalar or dict, but
340 f'you passed a "{type(value).__name__}"'
341 )
TypeError: "value" parameter must be a scalar or dict, but you passed a "list"
Run Code Online (Sandbox Code Playgroud)
正确的做法是什么?
看起来你可以通过向 提供一个字典来解决这个问题Series.fillna
。
>>> df
FocusColumn
0 NaN
1 1.0
2 NaN
>>> df['FocusColumn'].fillna({i: [] for i in df.index})
0 []
1 1
2 []
Name: FocusColumn, dtype: object
Run Code Online (Sandbox Code Playgroud)
笔记:
Series.fillna
.pandas
1.0.5 进行测试。