Python Pandas替换返回奇怪的结果

时间:2014-09-30 19:42:01

标签: python regex dictionary replace pandas

不知道这是一个错误或功能。如果是晚些时候,请原谅我的无知。

我尝试使用dataframe.replace将str_type列转换为不同的文本。我的dataframe列包含

df = pds.DataFrame([['J1801457','m2409-2'],['1457','m2409-1']],columns = ['c1', 'c2'])
c1_fromto = {'1457': 'G7_1457', 'J1801457': 'G7_1457'}
c2_fromto = {'m2409-1': 'm2409', 'm2409-2': 'm2409'}
print 'Before replace\n', df
print '\nAfter replace\n', df.replace({'c1':c1_fromto, 'c2':c2_fromto})

我希望在执行单行代码时,'1457''J1801457'都会转换为'G7_1457' df.replace({'old': from_to}, regex = False)。但相反,这就是我得到的

  • 来自old =>到(after_replace)
  • 'J1801457' => 'G7_G7_1457' ## ???双G7如何到达这里???
  • '1457' => 'G7_1457'
  • '其他'=> '其他'

0 个答案:

没有答案