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