在python中创建虚拟对象时替换$列值

时间:2018-04-15 09:37:51

标签: python regex pandas replace

我有以下数据,其中列值包含$。这使得创建的假人具有dtype无符号整数。我试图用''解决dtype问题来替换'$'。

INPUT

grp_m1      grp_m2      grp_m3      grp_m4
$50-$75     $50-$75     $50-$75     $50-$75
$50-$75     $50-$75     $50-$75     $50-$75
$150-$175   $150-$175   $150-$175   $150-$175
$100-$125   $100-$125   $100-$125   $100-$125
$150-$175   $125-$150   $125-$150   $125-$150

我用''代替'$'的代码:

if ('$' in str(df_column[column]) == True):
  new_val = [x.strip('$') for x in df_column[column].astype('str')]
  df_column.replace(column.values,values = new_val, inplace = True)

我现在尝试为单个列做,理想情况下想要处理包含'$'的所有列。所以df_column是数据框,而列是包含列名grp_m1 --- grp_m4的列表。

结果:

没有抛出错误,但列值没有变化。

预期输出:

grp_m1      grp_m2      grp_m3      grp_m4
50-75     50-75     50-75     50-75
50-75     50-75     50-75     50-75
150-175   150-175   150-175   150-175
100-125   100-125   100-125   100-125
150-175   125-150   125-150   125-150           

有人可以帮帮我吗?

我使用了提供的解决方案:

if ('$' in str(df_column[column]) == True):
   df_column.values.replace('\$', '',inplace = True, regex=True)

但数据框中的值没有变化。

0 个答案:

没有答案