美文网首页
scipy.io 和 numpy存储矩阵方法的差异

scipy.io 和 numpy存储矩阵方法的差异

作者: 习惯了千姿百态 | 来源:发表于2019-10-24 11:19 被阅读0次

    对两种save 方法进行比较
    比较结果,同样的数据,通过.mat 存储后在导入变成了二维的,因为matlab对[4,]和[1,4]没有区别,但python有区别。结论,所以使用的时候要注意些。

    import numpy as np
    import scipy.io as sio # mat
    
    arr1 = np.array([1,2,3,4])
    arr2 = np.array([3,4,5,6])
    # sio 是按照字典存的!!
    sio.savemat('test.mat', {'arr':arr1})
    a = sio.loadmat('test.mat')
    # 读取需要的数据
    a = a['arr']
    
    np.save('test.npy',arr2)
    b = np.load('test.npy', 'r')
    print(a,b)
    print(a.shape,b.shape)
    

    result:
    [[1 2 3 4]] [3 4 5 6]
    (1, 4) (4,)

    注意:当存储的矩阵>=2维时,两者没有这方面的差异

    参考资料:https://blog.csdn.net/raby_gyl/article/details/78368716

    相关文章

      网友评论

          本文标题:scipy.io 和 numpy存储矩阵方法的差异

          本文链接:https://www.haomeiwen.com/subject/hajrvctx.html