如何删除有图案的行

2024-10-06 08:56:27 发布

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

我有一个数据帧如下。我想删除RegionName包含[edit]的行。谢谢你的帮助。你知道吗

    State   RegionName1
0   Alabama Alabama[edit]
1   Alabama Auburn
2   Alabama Florence
3   Alabama Jacksonville
4   Alabama Livingston
9   Alaska  Alaska[edit]
10  Alaska  Fairbanks
11  Arizona Arizona[edit]
12  Arizona Flagstaff
13  Arizona Tempe
15  Arkansas    Arkansas[edit]
16  Arkansas    Arkadelphia
18  Arkansas    Fayetteville

Tags: 数据editstatealabamalivingstonauburnregionnameflorence
3条回答

您不需要删除,只需选择其中没有“编辑”的:

df = df[~df.RegionName1.str.contains('edit')

您可以使用.str.endswith()方法:

In [165]: df = df.loc[~df.RegionName1.str.endswith('[edit]')]

In [166]: df
Out[166]:
       State   RegionName1
1    Alabama        Auburn
2    Alabama      Florence
3    Alabama  Jacksonville
4    Alabama    Livingston
6     Alaska     Fairbanks
8    Arizona     Flagstaff
9    Arizona         Tempe
11  Arkansas   Arkadelphia
12  Arkansas  Fayetteville

我会选择^{}来获得适当的过滤器。你知道吗

df = df[~df.RegionName1.str.contains('[edit]')]

演示

>>> df
     RegionName1     State
0  Alabama[edit]   Alabama
1        Alabama   Alabama
2   Alaska[edit]    Alaska
3       Arkansas  Arkansas

>>> df = df[~df.RegionName1.str.contains('[edit]')]

>>> df
  RegionName1     State
1     Alabama   Alabama
3    Arkansas  Arkansas

相关问题 更多 >