我已经在CSV文件中处理了文档数据,我在pandas DataFrame中读到了这个文件:
+----------+------+------------+
| document | term | count |
+----------+------+------------+
| 1 | 126 | 1 |
| 1 | 80 | 1 |
| 1 | 1221 | 2 |
| 2 | 2332 | 1 |
因此它由document_id,term和term frequency组成。
我没有原始文档,但只有这些处理过的数据,我想用sklearn应用SVD,但我无法想象如何为SVD fit_transform()准备这个DataFrame,它期望:< / p>
X:{array-like,sparse matrix},shape(n_samples,n_features)
答案 0 :(得分:1)
您可以将此CSV转换为libsvm格式:
0 80:1 126:1 1221:2
0 2332:1
因此,您的示例数据将如下所示:
sklearn.datasets.load_svmlight_file
然后使用from sklearn.datasets import load_svmlight_file
X, y = load_svmlight_file('your_libsvm_format_file.libsvm')
from sklearn.decomposition import SVD
svd = SVD()
X_transformed = svd.fit_transform(X)
然后,
if File.exist?("#{Dir.home}/Desktop/test.xls")
p 'File EXISTS'
else
p 'Cannot find any file'
end