Невозможно преобразовать данные из файла CSV в sklearn
Я пытаюсь выучить некоторую классификацию в Scikit-learn. Однако я не мог понять, что означает эта ошибка.
import pandas as pd
from sklearn.feature_extraction.text import CountVectorizer
data_frame = pd.read_csv('data.csv', header=0)
data_in_numpy = data_frame.values
c = CountVectorizer()
c.fit_transform(data_in_numpy.data)
Это выдает ошибку:
NotImplementedError: multi-dimensional sub-views are not implemented
Как я могу обойти эту проблему? Одна запись из моего CSV-файла выглядит так:
Time Directors Actors Rating Label
123 Abc, Def A, B,c 7.2 1
Я полагаю, эта ошибка связана с тем, что в столбце "Директора" или "Актеры" указано более одного значения. Любая помощь будет оценена. Спасибо,
1 ответ
Согласно строке документации, sklearn.feature_extraction.text.CountVectorizer будет:
Преобразование коллекции текстовых документов в матрицу подсчета токенов
Тогда почему, интересно, вы вводите числовые значения?
Попробуйте преобразовать только строки (режиссеры и актеры):
data_in_numpy['X'] = data_frame[['Directors', 'Actors']].apply(lambda x: ' '.join(x), axis=1)
data_in_numpy = data_frame['X'].values
Во-первых, вы можете очистить данные, удалив запятые.
data_frame['Directors'] = data_frame['Directors'].str.replace(',', ' ')
data_frame['Actors'] = data_frame['Actors'].str.replace(',', ' ')