Как получить TF-IDF определенного слова с определенной даты? - PullRequest
0 голосов
/ 20 октября 2019

можно ли вычислить метрику tf-idf определенного слова по определенной дате с помощью python pandas?


Я хочу отобразить метрику tf-idf для слова dog с использованием дат 2008-01-02 и 2008-01-05 .

index  date         comment                                                  age
0      2008-01-02   I love dogs, I think dogs are the best.                  22
1      2008-01-03   I can't have cats because of my allergy. I like cats.    19
2      2008-01-04   This is awesome.                                         25
3      2008-01-05   I want a dog.                                            35

1 Ответ

0 голосов
/ 20 октября 2019

Вам нужно будет использовать библиотеку НЛП, такую ​​как gensim. Вы можете следовать первому примеру на странице TF-IDF .

В основном вы хотите использовать столбец «Комментарий» в качестве корпуса, а затем рассчитать TF-IDF для каждогострока в этом столбце.

from gensim.models import TfidfModel
from gensim.corpora import Dictionary

doc_list = []
for comment in df['comment']:
    doc_list.append(comment)
dct = Dictionary(doc_list)
corpus = [dct.doc2bow(line) for comment in df['comment']]
model = TfidfModel(corpus)

Затем вы можете перебрать свой корпус и найти значения TF-IDF. В этом коде могут быть некоторые неточности, так как я не могу тестировать некоторое время, но общая идея должна работать :).

...