0
我有以下数据框:设置单个单元格的值为NaN与熊猫数据帧取代
In [96]: df1
Out[96]:
a b c
0 1 1 26
1 1 2 38
2 1 3 17
如果我用替换法来对整个数据帧它的工作原理替换楠值:
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
但是,如果我试图取代与南单个单元格值它不工作:
In [101]: df1.iloc[1:2,0:1].replace(1, np.nan, inplace=True)
In [102]: df1
Out[102]:
a b c
0 1 1.0 26
1 1 NaN 38
2 1 3.0 17
这种行为的原因是什么?
试试这个:'df1.iloc [1:2,0:1] = np.nan'或者干脆'df1.iloc [1,1] = NP .nan' – MaxU
'df1.iloc [1:2,0:1]'是副本。即使你传递'inplace = True',它也会执行拷贝的操作。 – ayhan