zoukankan      html  css  js  c++  java
  • Python的稀疏矩阵和参数保存 save/load

    1. 稀疏矩阵的建立:coo_matrix()

    from scipy.sparse import coo_matrix
    
    # 建立稀疏矩阵
    data = [1,2,3,4]
    row = [3,6,8,2]
    col = [0,7,4,9]
    
    c = coo_matrix((data,(row,col)),shape=(10,10)) #构建10*10的稀疏矩阵,其中不为0的值和位置在第一个参数
    print(c)

    2. 稀疏矩阵转化为密集矩阵:todense()

    d = c.todense()
    print(d)

    3. 将一个0值很多的矩阵转化为稀疏矩阵

    e = coo_matrix(d)  #将一个0值很多的矩阵转为稀疏矩阵
    print(e)

    4. save:类似于matlab中的.mat格式,python也可以保存参数数据,除了保存成csv,json,excel等之外,个人觉得matlab的.mat格式真的很强,啥都可以直接保存~~

    import numpy as np
    
    # numpy.save(arg_1,arg_2),arg_1是文件名,arg_2是要保存的数组
    aa = np.array(d)
    print(aa)
    
    # save
    np.save('test_save_1.npy', aa)  #保存一个数组
    np.savez('test_save_2', aa=aa, d=d)  #保存多个数组,其中稀疏矩阵可以直接保存

    5. load:加载参数数据

    #load
    a_ = np.load('test_save_1.npy')
    print(a_)
    dt
    = np.load('test_save_2.npz') #npz数据加载后是一个字典格式数据 print(dt) print(dt['aa']) print(dt['d']) #获取其中的参数值,类似于字典形式获取

    6. 获取npz数据的参数名称

    #获取参数名称
    p_name =list(dt.keys())
    print(p_name)
    
    #获取值
    p_value =list(dt.values())
    print(p_value)

    #

    参考:

    https://blog.csdn.net/littlehaes/article/details/103523512

    https://www.cnblogs.com/Yiutto/p/5827775.html

  • 相关阅读:
    【服务器】【Windows】【3】开放服务器端口
    【服务器】【Windows】【2】把jar包做成服务,在Service中管理
    FZU 1753
    poj 1017
    poj 1666
    poj 1132
    ZOJ 2562 More Divisors
    POJ 2992 Divisors
    poj 2773 happy 2006
    poj 2407 Relatives
  • 原文地址:https://www.cnblogs.com/qi-yuan-008/p/12642783.html
Copyright © 2011-2022 走看看