Ошибки с CountVectorizer: нет такого файла или каталога - PullRequest
1 голос
/ 06 октября 2019

Я пытаюсь использовать CountVectorizer в документе, но продолжаю работать с

Нет такого файла или каталога: 'id' error.

Мой код:

##%%time
## Creating a 2-level index for goog_s and amaz_s
goog_s['dataset_name'] = 'goog_s'
amaz_s['dataset_name'] = 'amaz_s'
amaz_s.rename(columns = {'title':'name'}, inplace = True)

## Creating a new Dataframe containing both goog_s and amaz_s 
df_s = pd.concat([goog_s, amaz_s], axis = 0, join = 'outer', keys = ['goog_s', 'amaz_s'])

## Creating column info
df_s ["info"] = df_s["name"].astype(str) + " " + df_s["description"]


## Creating countVectorizer
cv = CountVectorizer(input='filename', encoding='iso-8859-1', 
                     decode_error='ignore', analyzer='word',
                    ngram_range=(1,1), stop_words='english',
                    binary=True)

cvRaw = cv.fit_transform(df_s)

Я получаю сообщение об ошибке в строке cvRaw = cv.fit_transform(df_s), которая гласит FileNotFoundError: [Errno 2] No such file or directory: 'id'.

Мой фрейм данных df_s содержит столбец с именем id. Я не знаю, почему я получаю эту ошибку.

1 Ответ

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

Вы должны указать input параметр как 'content', в противном случае он будет искать файл с именами, указанными в списке каналов в fit(). В вашем случае это будут имена столбцов df_s dataframe, потому что если вы выполните итерацию с dataframe, он вернет имена столбцов.

Более подробное описание приведено в документации .

Также для fit() необходимо указать один итератор, что означает pd.Series.

Я не уверен в ваших намерениях, вот мое предложение.

cvRaw = cv.fit_transform(df_s['info'])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...