我有以下数据框:
W: Conflicting distribution: https://downloads.plex.tv/repo/deb public InRelease (expected public but got )
如果我使用replace方法在整个数据帧上用Nan替换值,那么它可以工作:
In [96]: df1
Out[96]:
a b c
0 1 1 26
1 1 2 38
2 1 3 17
但是如果我尝试用Nan替换单个单元格值则不起作用:
In [97]: df1.replace(2, np.nan, inplace=True)
In [98]: df1
Out[98]:
a b c
0 1 1.0 26
1 1 NaN 38
2 1 3.0 17
这种行为的原因是什么。
答案 0 :(得分:1)
除了很棒的评论。您可以放弃inplace=True
并重新分配结果
df1.iloc[1:2, 0:1] = df1.iloc[1:2, 0:1].replace(1, np.nan)
df1
a b c
0 1.0 1.0 26
1 NaN NaN 38
2 1.0 3.0 17