【发布时间】:2016-01-16 21:38:12
【问题描述】:
这是我的数据框:
date ids
0 2011-04-23 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,...
1 2011-04-24 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,...
2 2011-04-25 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,...
3 2011-04-26 Nan
4 2011-04-27 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,...
5 2011-04-28 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,...
我想用 [] 替换 Nan。怎么做? Fillna([]) 不起作用。我什至尝试过replace(np.nan, []),但它给出了错误:
TypeError('Invalid "to_replace" type: \'float\'',)
【问题讨论】:
-
您是如何获得
ids中的列表的? -
无法分配空列表,
df.ix[df['ids'].isnull(), 'ids'] = set()设置是否有效? -
请注意,这很难做到的一个原因是因为您并不是真的要在数据框单元格中存储非标量值。你可以这样做,它有时作为中间步骤很方便(有许多内置方法将 generate 列表作为元素),但目前还没有强有力的支持。
-
有趣的是,我设法运行了一个无限循环(到达
RecursionError),使用:df.ids.where(df.ids.isnull(), [[]])。