Mam następującą pandasową ramkę danych. dla uproszczenia, pozwala zakładać, że ma tylko dwie kolumny: id
i search_term
unikanie regex w pandach str.replace
id search_term
37651 inline switch
zrobić:
train['search_term'] = train['search_term'].str.replace("in."," in. ")
spodziewa się, że zbiór danych powyżej jest nienaruszone, ale w zamian za to zbiorze :
id search_term
37651 in. in. switch
co oznacza inl
otrzymuje in.
i ine
jest replac ed przez in.
, tak jakbym używał wyrażeń regularnych, gdzie kropka oznacza dowolną postać.
Jak przekształcić pierwsze polecenie tak, że dosłownie in.
zastępuje in.
ale każdy in
nie następuje kropka jest nietknięty, jak w:
a = 'inline switch'
a = a.replace('in.','in. ')
a
>>> 'inline switch'
Co to ty rzeczywisty pożądany wynik? –
Przepraszam, chcę dosłownie zastąpić kropkę. Poniżej zamieściłem odpowiedź, ponieważ znalazłem dobry wpis w wyrażeniu regularnym dla "kropki". Problem polega na tym, że str.replace() w ramce danych używa regex –