Как ускорить эту операцию поиска и назначения в пандах - PullRequest
0 голосов
/ 06 апреля 2019

У меня есть следующая операция

for i, paper in enumerate(corpus_df.itertuples(), 1):
    corpus_df.loc[i, 'main_category'] = metadata.loc[metadata['filename_parsed'] == paper.arxiv_id]['categories'].str.split().tolist()[0][0]

где я хочу присвоить каждой строке в corpus_df кадре данных значение в столбце main_category, взяв это значение из metadata кадра данных.

corpus_df содержит ~ 27 000 строк, а metadata содержит ~ 250 000 строк.

Я читал, что intertuples - это быстрый способ перебирать кадры данных, и что loc должен помочь со скоростью. Что еще я могу сделать, чтобы ускорить это? В настоящее время это занимает больше 5 минут.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...