Python классификация текста

Рейтинг: 0Ответов: 0Опубликовано: 18.03.2023

пробую классифицировать текст и попробовал этот пример:

from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.ensemble import RandomForestClassifier
from sklearn.ensemble import RandomForestRegressor
from sklearn.ensemble import ExtraTreesClassifier
from sklearn.linear_model import SGDClassifier
from sklearn.pipeline import Pipeline
 
 
#texts = ['текст номер один', 'текст номер два', 'комьютеры в лингвистике', 'компьютеры и обработка текстов']
texts_labels = [1, 1, 0, 0]

 
text_clf = Pipeline([
                     ('tfidf', TfidfVectorizer()),
                     #('clf', RandomForestClassifier())
                     #('clf', ExtraTreesClassifier())
                     ('clf', SGDClassifier())
                     ])
 
text_clf.fit(texts, texts_labels)
 
res = text_clf.predict(['текст номер три'])
print(res)  # [1]

Вопрос вот в чём, у меня имеется список слов, 4 столбца в excel файле: текст1 текст2 текст3 текст4
текст1 текст2 текст3 текст4 текст1 текст2 текст3 текст4 текст1 текст2 текст3 текст4 текст1 текст2 текст3 текст4

каждая колонка со словами, относится к определённой категории. Как можно использовать такие данные для вышеприведённого примера? Как их загрузить в nltk, при помощи pandas или как сделать метки для категорий (столбцов)?

вот так я сейчас пытаюсь закодировать:


headers =   ['visual', 'audio', 'kinest', 'digital']

data = pd.read_excel(path_to_file, header=None, names=headers)

obj_df = data.select_dtypes(include=['object']).copy()

onehotencoder = OneHotEncoder()

x = onehotencoder.fit_transform(obj_df['visual']).toarray()

print(x)```
но это (если правильно) для одного столбца...

Ответы

Ответов пока нет.