0

Sklearn を使用して大きな csv ファイルのデータをベクトル化したいので、次のコードを使用しました。

初挑戦:

from sklearn.feature_extraction.text import CountVectorizer

vectorizer = CountVectorizer(input='file', stop_words = 'english', ngram_range=(1,2))

vectorizer.fit_transform('test.csv')

しかし、私はこのエラーが発生しました:

AttributeError: 'str' オブジェクトに属性 'read' がありません

2 回目の試行で、エラーがまだ発生しました。

import csv

file = open('test.csv', 'r')

f = file.readline()

vectorizer.fit_transform(f)

3 回目の試行: これは機能しましたが、メモリ不足のために強制終了されました。

file = open('test.csv', 'r')
a = file.read()
vectorizer = TfidfVectorizer(stop_words = 'english', ngram_range=(1,2))
de = vectorizer.fit_transform(a.split('\n'))

Sklearn で fit_transform を使用して大きな CSV ファイルを処理する方法は?

4

1 に答える 1

0

入力を afileと見なしstring、両方の場合に a を指定しfile.readline()ます (ファイルの最初の行を a として返しますstring)。

代わりに、ファイルを渡してください。

次のようにします。

file = open('test.csv', 'r')
vectorizer.fit_transform(file)
于 2016-10-21T09:43:28.517 に答える