Как использовать текстовую классификацию с датафреймом в python - PullRequest
1 голос
/ 08 мая 2019

Я использую классификацию текста для классификации диалектов. Тем не менее, я заметил, что я должен использовать countVectorizer следующим образом:

from sklearn.feature_extraction.text import CountVectorizer  
vectorizer = CountVectorizer(max_features=200, min_df=2, max_df=0.7, stop_words=stopwords.words('arabic'))  
X = vectorizer.fit_transform(X).toarray()

Что происходит, я создаю новый текстовый файл для каждой строки в моем CSV-файле. Я собрал 1000 твитов из твиттера. и они помечены. и я их как CSV в одном файле.

У меня есть 2 вопроса:

  1. Должен ли я сделать это? отделить каждую строку в одном текстовом файле? или я могу использовать его как фрейм данных
  2. Нужно ли использовать countVectorizer в классификации текста? есть ли другой способ?

1 Ответ

1 голос
/ 08 мая 2019
  1. Нет, вам не нужно разделять каждую строку в новом текстовом файле.Если вы посмотрите на официальный пример документа sklearn https://scikit -learn.org / stable / modules / generate / sklearn.feature_extraction.text.CountVectorizer.html , вы увидите, как это сделать.Если вы хотите последовать этому примеру, вам придется преобразовать столбец твитов csv из фрейма данных в список и передать его функции так же, как в примере с документом.

  2. Нет, вам не нужно использовать countvectorizer.Есть несколько других способов сделать это, таких как Tf-IDF, Word2Vec, мешок слов и т. д. Существует несколько методов преобразования текста в векторы для классификации.В вашем случае я считаю, что TF-IDF или Word2Vec будут работать нормально.

...