为什么替换仅在某些情况下有效?

时间:2019-05-16 17:14:58

标签: python pandas

我正在为一个项目导入和合并一些Excel文件,但我意识到合并的数据框缺少2行。在分析了所发生的事情之后,我得出了该错误与以下代码行相关的结论:

energy['Country'] = (energy['Country'].replace({'China, Hong Kong Special Administrative Region': 'Hong Kong',
                                                'United Kingdom of Great Britain and Northern Ireland': 'United Kingdom',
                                                'Republic of Korea': 'South Korea',
                                                'United States of America': 'United States'})) 

现在,最奇怪的部分是,如果我运行包含完整代码的文件并检查数据帧energy中的“国家/地区”列,则会发现没有进行上述预期的替换,因此,当合并所有数据框时,例如,“美国”不在内部联合中(因为在此数据框中,它被识别为“美利坚合众国”,而在其他数据框中则仅是“美国”)。

如果我将整个代码复制粘贴到控制台中,它也将无法正常工作。

但是,如果我运行全部代码,则将上面的代码复制粘贴到控制台,然后将其余的代码复制粘贴到控制台,它将可以使用上面提到的国家/地区的正确名称。

有什么想法为什么会这样?与缩进有关吗?

0 个答案:

没有答案