处理数据的时候总是会用到csr_matrix函数,每次百度出的解释都看不明白,于是自己写了个说明。
目的:当user和item数目过多时,gpu存不下一个m*n的大矩阵,需要压缩为稀疏矩阵。
用法:
from scipy.sparse import csr_matrixrating = [1,2,3,4,5]user = [3,4,1,2,3]item = [1,1,1,2,2]res = csr_matrix((rating,(user,item)),shape=(5,5))print(res)a = res.todense()print(a)
输出:
(1, 1) 3 (3, 1) 1 (3, 2) 5 (4, 1) 2 [[0 0 0 0 0] [0 3 0 0 0] [0 0 4 0 0] [0 1 5 0 0] [0 2 0 0 0]]