[数据处理] numpy转为csv文件 | 矩阵转为csv文件 | 稀疏矩阵的行列索引提取

numpy转为csv文件:

matrix_pd = pd.DataFrame(matrix)
matrix_pd.to_csv('./save.csv')

矩阵转为csv文件:

numpy.savetxt('new.csv', matrix, delimiter=',')

稀疏矩阵

稀疏矩阵中,行被压缩了,只有data(数据)、indices(列索引)、indptr
(行偏移量)
如果相对稀疏矩阵中非零数值的行、列进行提取,(debug时候打印可以看见,但是直接print并不完整)

res_dict = {key: [] for key in self.userhisMatTest.nonzero()[0]}  # 提取行作为key
for row, col in zip(*self.userhisMatTest.nonzero()):
    res_dict[row].append(col)

res_dict字典,key是行,value是列。
【稀疏矩阵部分,主要参考博文3、4】

参考:

  1. 使用pandas将numpy中的数组数据保存到csv文件的方法:https://www.jb51.net/article/142040.htm
  2. Python中利用numpy将数组(矩阵)存成csv文件,将csv文件读取为数组(矩阵):https://blog.csdn.net/allenlzcoder/article/details/80720680
  3. python的高级数组之稀疏矩阵:https://wenku.baidu.com/view/9c23563a954bcf84b9d528ea81c758f5f61f29c0.html
  4. scipy稀疏矩阵访问列和行索引值:https://www.cnpython.com/qa/366692

你可能感兴趣的:(model-pytorch,矩阵,python,线性代数)