csr_matrix矩阵用法小节

本文探讨了使用CSR(Compressed Sparse Row)格式表示稀疏矩阵的方法,并演示了如何在Python中通过Scipy库创建CSR矩阵。同时,文章详细介绍了从CSR格式转换到DOK和COO格式的过程,以及如何获取转换后的矩阵的行和列指标。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

from scipy.sparse import *

row =  [0,0,0,1,1,1,2,2,2]#行指标
col =  [0,1,2,0,1,2,0,1,2]#列指标
data = [1,0,1,0,1,1,1,1,0]#在行指标列指标下的数字
team = csr_matrix((data,(row,col)),shape=(3,3))
print(team)
print(team.todense())


输出结果:
 (0, 0)	1
  (0, 1)	0
  (0, 2)	1
  (1, 0)	0
  (1, 1)	1
  (1, 2)	1
  (2, 0)	1
  (2, 1)	1
  (2, 2)	0
[[1 0 1]
 [0 1 1]
 [1 1 0]]

Process finished with exit code 0
row =  [0,0,0,0,1,1,1,1,2,2,2,2]#行指标
col =  [0,1,2,3,0,1,2,3,0,1,2,3]#列指标
data = [1,0,1,1,0,1,1,1,1,0,1,1]#在行指标列指标下的数字
team = csr_matrix((data,(row,col)),shape=(3,4))
# print(team)
# print(team.todense())
team_dok = team.todok()
# print(team_dok)

team_coo = team_dok.tocoo()
item =list(team_coo.col.reshape(-1))
# print(type(item))
print(item)


输出:
[0, 0, 0, 1, 1, 1, 2, 2, 2, 3, 3, 3]
team_coo = team_dok.tocoo()
item =list(team_coo.col.reshape(-1))
user =list(team_coo.row.reshape(-1))
print("col:",item)
print("row:",user)

输出:
col: [0, 0, 0, 1, 1, 1, 2, 2, 2, 3, 3, 3]
row: [0, 1, 2, 0, 1, 2, 0, 1, 2, 0, 1, 2]

Process finished with exit code 0

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值