我有一个像这样的测向仪:
| id | qty | item |
+-----+------+------+
| 001 | 700 | CB04 |
| 002 | 500 | NaN |
| 003 | 1500 | AB01 |
我想将NaN值从df['item']
复制到df['qty']
,这样它看起来像这样:
我做了以下事情
df['qty'] = df.loc[df['item'].isnull(),'item']
但我的df结果是这样的。在
| id | qty | item |
+-----+-----+----------+
| 001 | NaN | CB04 box |
| 002 | NaN | NaN |
| 003 | NaN | AB01 box |
您的方法不起作用,因为您选择列
item
,当它为空时,并将qty
设置为等于该结果,该结果始终是NaN
,因此它用NaN
填充qty
将
loc
与布尔索引一起使用,并设置所需的列。你很接近,只是分配得不太正确。在同样使用
^{pr2}$np.where
(在300k行数据帧上测试时,速度稍快)相关问题 更多 >
编程相关推荐