我正在尝试将一些真实数据解析成一个
我希望获得一个大小为100x100的稀疏矩阵。并将1分配给
任何建议请?
.mat
对象,以便在我的 matlab 脚本中加载。
我遇到了这个错误:
TypeError:'coo_matrix'对象不支持项目分配
我找到了 coo_matrix。 但是,我无法为其分配值。
data.txt
10 45
11 12
4 1
我希望获得一个大小为100x100的稀疏矩阵。并将1分配给
Mat(10, 45) = 1
Mat(11, 12) = 1
Mat(4, 1) = 1
代码
import numpy as np
from scipy.sparse import coo_matrix
def pdata(pathToFile):
M = coo_matrix(100, 100)
with open(pathToFile) as f:
for line in f:
s = line.split()
x, y = [int(v) for v in s]
M[x, y] = 1
return M
if __name__ == "__main__":
M = pdata('small.txt')
任何建议请?
coo_matrix
接受数据参数。请查看其文档。 - hpaulj