我有一个python列表。清单如下:
[[196, 242, 3],
[186, 302, 3],
[22, 377, 1],
[196, 377, 3],
....
]
第一列对应于用户(1:943),第二列对应于项目(1:1682)及其对项目的投票。我想试试矩阵分解library。我应该创建一个用户x项目矩阵吗?如果是的话,我如何在python中创建一个这样的矩阵,一个轴是用户的大小,另一个轴是项目的大小,值是用户的投票数?你知道吗
编辑:我还检查不高于它需要一个二维矩阵作为输入,而不是一个列表或稀疏表示。你知道吗
Tags:
当然。你知道吗
可以使用^{} 函数创建二维numpy数组(可以将其视为矩阵):
下面是如何从集合项列表创建稀疏矩阵:
您的数据看起来像一个列表列表:
从中生成一个数组-以便于执行以下操作
将索引列移到0基(可选)
使用这种方法,可以使用
coo
(或csr
)格式,即(data, (rows, cols))
,快速而简单地定义稀疏矩阵。迭代dok
方法是可行的,但速度更快。你知道吗M.A
从这个稀疏矩阵创建一个密集数组。一些代码,尤其是sckit-learn
包中的代码可以直接使用稀疏矩阵。你知道吗创建密集阵列的直接方法是:
相关问题 更多 >
编程相关推荐