我正在尝试使用CountVectorizer创建文档项矩阵。我的数据报获得了约18万行数据。这是我正在使用的代码:
from sklearn.feature_extraction.text import CountVectorizer
cv = CountVectorizer(stop_words='english')
X = cv.fit_transform(df.content) #X is a scipy sparse matrix
data_dtm = pd.DataFrame(X.toarray(), columns=cv.get_feature_names())
我在这里遇到此错误: MemoryError:无法为形状为(180399,52142)和数据类型为int64的数组分配70.1 GiB
我用todense()尝试了同样的事情,以及:
data_dtm = pd.DataFrame(X.todense(), columns=cv.get_feature_names())
但是还是一样。我知道问题出在 toarray()/ todense() 我发现了一些关于在稀疏矩阵上应用这些功能的类似问题,但无法获得有效的答案。例如,使用 asarray()是对我不起作用的建议之一!
感谢您的帮助!