У меня есть столбец округов, к которому добавляются варианты co
, co. ,
Co. ,
co-`и т. Д., И я хочу избавиться от них и просто оставить название округа (в данном случаеКорк).
x = pd.DataFrame({'area':['Co Cork','Co. Cork','Co-Cork','Co- Cork','co. Cork','county cork']})
print(x)
area
0 Co Cork
1 Co. Cork
2 Co-Cork
3 Co- Cork
4 co. Cork
5 county cork
Это то, что я пробовал, и удалил большинство из них, кроме третьего, тире -
, который соединен со словом Cork
.
x['fixed']=(x['area'].str.replace('co\s+', '', case=False)
.str.replace('co.\s+', '', case=False)
.str.replace('county\s+', '', case=False)
.str.replace('co\-\s+ | co-$', '', case=False)
.str.replace('co\.\s+', '', case=False)
.str.replace('\W', '')
.str.title())
print(x)
area fixed
0 Co Cork Cork
1 Co. Cork Cork
2 Co-Cork Cocork
3 Co- Cork Cork
4 co. Cork Cork
5 county cork Cork
Я использовал здесь знак доллара $
: .str.replace('co\-\s+ | co-$', '', case=False)
, чтобы получить строки, заканчивающиеся на co-
. Я думал, что это уберет. Но я думаю, что это не работает, потому что это подстрока?
Итак, что за очевидная вещь я делаю неправильно?