Pandas 选择包含数字子字符串的行

Pandas 选择包含数字子字符串的行,pandas,dataframe,Pandas,Dataframe,我需要从数据帧中删除行,其中特定列包含包含数字子字符串的字符串。请参见我的数据框的阴影列 应删除以0E为前缀或以21任意两位数为后缀或以24A任意两位数为后缀的行 有什么建议吗? 提前感谢。您可以将布尔索引与正则表达式一起使用: ^0E-以0E开头 \d{2}$-以2位数字结尾 \d{2}[A-Z]$-以2位数字和1个大写字母结尾 列=。。。目标列 mask=df[col].str.containsr'^0E |\d{2}$|\d{2}[A-Z]$' df=df.loc[~掩码] 可以对正则表达

我需要从数据帧中删除行,其中特定列包含包含数字子字符串的字符串。请参见我的数据框的阴影列

应删除以0E为前缀或以21任意两位数为后缀或以24A任意两位数为后缀的行

有什么建议吗?
提前感谢。

您可以将布尔索引与正则表达式一起使用:

^0E-以0E开头 \d{2}$-以2位数字结尾 \d{2}[A-Z]$-以2位数字和1个大写字母结尾 列=。。。目标列 mask=df[col].str.containsr'^0E |\d{2}$|\d{2}[A-Z]$' df=df.loc[~掩码]
可以对正则表达式使用布尔索引:

^0E-以0E开头 \d{2}$-以2位数字结尾 \d{2}[A-Z]$-以2位数字和1个大写字母结尾 列=。。。目标列 mask=df[col].str.containsr'^0E |\d{2}$|\d{2}[A-Z]$' df=df.loc[~掩码]
@tdy给出了一个很好的答案,但如果我理解正确,只有一个地方需要修改

对于以两位数或两位数和大写字符结尾的值,正则表达式应为:

.*\d{2}[A-Z]$
@tdy给出了一个很好的答案,但如果我理解正确,只有一个地方需要修改

对于以两位数或两位数和大写字符结尾的值,正则表达式应为:

.*\d{2}[A-Z]$
好的接球+1,谢谢!虽然这些通常属于comments@tdy不用担心,我还在编辑的时候看到了你的答案事实上,刚刚注意到您还组合了最后两个正则表达式,很好!我从他的答案中猜出来,并在密码中更正了。。它工作得很好。谢谢大家。接得好+1,谢谢!虽然这些通常属于comments@tdy不用担心,我还在编辑的时候看到了你的答案事实上,刚刚注意到您还组合了最后两个正则表达式,很好!我从他的答案中猜出来,并在密码中更正了。。它工作得很好。谢谢大家。