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”

第二次尝试,但仍然出现错误:

import csv

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

f = file.readline()

vectorizer.fit_transform(f)

第三次尝试:这个确实有效,但由于内存不足而被杀死。

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

您将输入视为 a并在两种情况下file都给它 a (将文件的第一行返回为 a )。stringfile.readline()string

相反,给它一个文件。

执行以下操作:

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