为什么不能使用布尔掩码修改数据框中的值?

时间:2017-03-28 01:24:32

标签: python dataframe

例如,我想将“国家”专栏中的“韩国”改为“韩国”,但看起来像“韩国”仍然存在:

df[df['Country'] == 'Republic of Korea']['Country'] = 'South Korea'
df[df['Country'] == 'Republic of Korea']['Country']


164    Republic of Korea
Name: Country, dtype: object

1 个答案:

答案 0 :(得分:2)

您正在使用copy (slice) of original dataframe。尝试使用dataframe.loc

df.loc[df['Country'] == 'Republic of Korea', 'Country'] = 'South Korea'

运行代码时也应该出现警告:

  

正在尝试在DataFrame的切片副本上设置值。

     

尝试使用.loc [row_indexer,col_indexer] = value而不是