Python 无法更新数据帧中的特定条目
我有一个数据框,其中Python 无法更新数据帧中的特定条目,python,pandas,Python,Pandas,我有一个数据框,其中column_1中的一些条目具有NaN值。我想用列2中的相应值替换这些值。两列都包含float64值 我尝试了以下方法,但奇怪的是它没有更新值 ix = np.isnan(mydf.loc[:,'column_1']) mydf[ix]['column_1'] = tchart[ix]['column_2'] 真的很奇怪,因为我完全可以看到: mydf[ix]['column_1'] 是具有NaN值的序列 那 mydf[ix]['column_2'] 具有有
column_1
中的一些条目具有NaN
值。我想用列2
中的相应值替换这些值。两列都包含float64
值
我尝试了以下方法,但奇怪的是它没有更新值
ix = np.isnan(mydf.loc[:,'column_1'])
mydf[ix]['column_1'] = tchart[ix]['column_2']
真的很奇怪,因为我完全可以看到:
mydf[ix]['column_1']
是具有NaN值的序列
那
mydf[ix]['column_2']
具有有效值
为什么不起作用
我甚至不能:
mydf[ix]['column_1'] = 45
这是链接索引的一个示例。对于获取值,这通常是可以的;但是,对于设置值,可能或可能无法工作,因为您可能试图在副本上设置值。对于多维设置,最好通过索引器
ix/loc
进行设置
在本例中,使用mydf.loc[ix,'columns_1']=45
有关更完整的解释,请参阅。这是链接索引的一个示例。对于获取值,这通常是可以的;但是,对于设置值,可能或可能无法工作,因为您可能试图在副本上设置值。对于多维设置,最好通过索引器
ix/loc
进行设置
在本例中,使用mydf.loc[ix,'columns_1']=45
有关更完整的解释,请参阅。您正在修改副本,请参阅,使用
mydf.loc[ix,'columns_1']=value
感谢@Jeff修复了它。我已经和熊猫一起工作了几个月了,这让我大吃一惊。如果您将其作为答案,我将接受。如果您正在修改副本,请参阅,使用mydf.loc[ix,'columns_1']=value
谢谢@Jeff修复了它。我已经和熊猫一起工作了几个月了,这让我大吃一惊。如果你写下来作为答复,我会接受的。