Ускорить мой поиск и заменить код на Python? - PullRequest
0 голосов
/ 19 октября 2019

У меня есть список из 4000 строк, которые мне нужно удалить из столбца данных pandas. Приведенный ниже код отлично работает для примера, приведенного ниже, но когда я использую его на моем кадре данных pandas, содержащем более 20 000 строк, это занимает вечность. Любые идеи по ускорению этого?

import pandas as pd
import re

df = pd.DataFrame(
    {
        "ID": [1, 2, 3, 4, 5],
        "name": [
            "Hello Sam how is it going today? oh yeah",
            "Hello Jane how is it going today? oh yeah",
            "It is an Hello example how are you doing today?",
            "how is it going today?n[soldjgf   ",
            "how is it going today Hello World",
        ],
    }
)


my_list = ['how is it going today?n[soldjgf', 'how are you doing today?']
# =============================================================================
# 
p = re.compile('|'.join(map(re.escape, my_list)))
df['cleaned_text'] = [p.sub(' ', text) for text in df['name']] 

1 Ответ

1 голос
/ 19 октября 2019

используйте df.str.replace ()

p = re.compile('|'.join(map(re.escape, my_list)))

df['cleaned_text'] = df['name'].str.replace(p, ' ')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...