删除 Pandas 数据框列中的小写字母

not*_*ood 6 python pandas

我有以下 df

data = {'Name':['TOMy', 'NICKs', 'KRISHqws', 'JACKdpo'], 'Age':[20, 21, 19, 18]}
Run Code Online (Sandbox Code Playgroud)

如何从 Name 列中删除小写字母,以便在查看时data['Name'],我有TOM,NICK,KRISH,JACK.

我尝试了以下但没有运气,

data['Name'].mask(data['Name'].str.match(r'^[a-z]+$'))
data['Name'] = data['Name'].str.translate(None,string.ascii_lowercase)
Run Code Online (Sandbox Code Playgroud)

Wil*_*sem 3

您可以name使用.str.replace(..)[pandas-doc]更新该列:

df['Name'] = df['Name'].str.replace('[a-z]', '')
Run Code Online (Sandbox Code Playgroud)

对于给定的样本数据,这给我们:

>>> df['Name'].str.replace('[a-z]', '')
0      TOM
1     NICK
2    KRISH
3     JACK
Name: Name, dtype: object
Run Code Online (Sandbox Code Playgroud)