Python 如何删除带有模式的行
我有一个如下的数据帧。我想删除RegionName包含[edit]的行。谢谢你的帮助Python 如何删除带有模式的行,python,pandas,Python,Pandas,我有一个如下的数据帧。我想删除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[ed
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
您不需要删除,只需选择其中没有“编辑”的内容:
df = df[~df.RegionName1.str.contains('edit')
我会选择合适的过滤器
df = df[~df.RegionName1.str.contains('[edit]')]
演示
您可以使用.str.endswith方法:
>>> 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
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