仅替换包含字母数字、字符串和数字值的列中的数字值?

2024-10-01 07:35:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用所需的值替换测试值

  test_values desired
0       cat95   cat95
1         123       1
2      dog123  dog123
3        duck    duck
4         456       1
5         666       1
6      bat/23  bat/23

感谢您的帮助或推荐


Tags: testvaluesduckdesiredbatdog123cat95
2条回答
test_data = [ x for x in test_data if not is_instance(x, int) ]

这应该起作用:

df.loc[df['test_values'].apply(lambda x: x.isnumeric()), 'test_values']=df.loc[df['test_values'].apply(lambda x: x.isnumeric()), 'desired']

例如:

  test_values desired
0       cat95     cat
1         123      10
2      dog123     dog
3        duck      du
4         456      15
5         666      20
6      bat/23     bat

df.loc[df['test_values'].apply(lambda x: x.isnumeric()), 'test_values']=df.loc[df['test_values'].apply(lambda x: x.isnumeric()), 'desired']

>>>print(df)
  test_values desired
0       cat95     cat
1          10      10
2      dog123     dog
3        duck      du
4          15      15
5          20      20
6      bat/23     bat

相关问题 更多 >