gpt4 book ai didi

python - 如何从 Pandas 数据框中的字符串项中删除数字

转载 作者:IT老高 更新时间:2023-10-28 21:15:16 25 4
gpt4 key购买 nike

我有一个类似于下面的数据框:

Name    Volume  Value
May21 23 21321
James 12 12311
Adi22 11 4435
Hello 34 32454
Girl90 56 654654

我希望输出格式为:

Name    Volume  Value
May 23 21321
James 12 12311
Adi 11 4435
Hello 34 32454
Girl 56 654654

想要从名称列中删除所有数字。

我最接近的是在 cell 级别使用以下代码进行操作:

result = ''.join([i for i in df['Name'][1] if not i.isdigit()])

知道如何在 series/dataframe 级别以更好的方式做到这一点。

最佳答案

您可以申请str.replaceName 列结合正则表达式:

import pandas as pd

# Example DataFrame
df = pd.DataFrame.from_dict({'Name' : ['May21', 'James', 'Adi22', 'Hello', 'Girl90'],
'Volume': [23, 12, 11, 34, 56],
'Value' : [21321, 12311, 4435, 32454, 654654]})

df['Name'] = df['Name'].str.replace('\d+', '')

print(df)

输出:

    Name   Value  Volume
0 May 21321 23
1 James 12311 12
2 Adi 4435 11
3 Hello 32454 34
4 Girl 654654 56

在正则表达式中,\d 代表“任意数字”,+ 代表“一个或多个”。

因此,str.replace('\d+', '') 的意思是:“将字符串中所有出现的数字替换为空”。

关于python - 如何从 Pandas 数据框中的字符串项中删除数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41719259/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com