我想创建一个稀疏csr_matrix
来表示一个稀疏图。对于每个边缘,以及权重,我要定义几个“属性”。权重之后将直接访问属性之一。其他的则不太重要,因此很少被访问。最好/最有效的方法是什么? Scipy矩阵是否接受非数字作为条目?
示例:
说我有一个用数组表示的稀疏矩阵m
(值是权重):
[[ 0.49850701 0.27 0. ]
[ 0.22479665 33. 3. ]
[ 0. 10. 0. ]]
我想为每个条目(x,y)存储其他数据。例如,假设我要存储“寿命”和“名称”属性。
寿命属性将位于这样的矩阵中:
[[ 8. 10. 0. ]
[ 0.9 4. 3.2 ]
[ 0. 4.3 0. ]]
名称属性将在这样的矩阵中:
[[ 'Bob' 'Kevin' 0. ]
[ 'Gary' 'Joe' 'Sally' ]
[ 0. 'Ralph' 0. ]]
做到这一点的最佳方法是什么?我应该为每个属性分配一个单独的矩阵,为权重和寿命分配一个矩阵,为所有其他属性分配一个由坐标元组作为键的字典,为包含列表或字典条目的矩阵,为权重分配一个矩阵,为所有其他属性分配一个字典?