python保存数据方式(npy, pkl, h5, pt, npz)
python保存数据方式(npy文件, pkl文件, h5文件, pt文件, npz文件)
·
利用python保存数据方式
1 numpy中npy文件保存和读取
利用numpy库重要保存array数据,
# 保存数据
import numpy as np
data = np.zeros((3,3))
np.save("./test.npy", data)
# 加载数据
data = np.load("./test.npy")
2,torch中pt文件保存和读取
pt文件用来保存tensor形式的数据
# 保存数据
import torch
data = np.zeros((3,3))
data_tensor = torch.from_numpy(data)
torch.save(data_tensor, "./test.pt")
# 加载数据
data_tensor = torch.load("./test.pt")
3,pickle中pkl文件保存和读取
利用pickle可以保存任何格式的文件
# 保存数据
import pickle
def save_pickle(data, file_name):
f = open(file_name, "wb")
pickle.dump(data, f)
f.close()
def load_pickle(file_name):
f = open(file_name, "rb+")
data = pickle.load(f)
f.close()
return data
data = np.zeros((3,3))
data_tensor = torch.from_numpy(data)
save_pickle(data, "./test.pkl")
save_pickle(data_tensor, "./test_tensor.pkl")
# 加载数据
data = load_pickle("./test.pkl")
data_tensor = tload_pickle("./test_tensor.pkl")
4,numpy中npz文件保存和读取
对于同时在一个文件夹保存多中类型数据,并且每种数据自带标签,则可以采用字典储存方式,然后利用pt文件或者pkl文件都可以直接进行保存和读取。
也可以利用npz文件。
# 保存数据
import numpa as np
data_1 = np.zeros((3,3))
data_2 = np.ones((3,1))
np.save("./test.npz", data_1 = data_1, data_2 = data_2)
# 加载数据
data_names = np.load("./test.npz")
print(data_names.files) # ['data_1', "data_2"]
print(data_names["data_1"]) # np.zeros((3,3))
print(data_names["data_2"]) # np.ones((3,1))
5,python中h5文件保存和读取
利用python包中h5py包进行读取和保存h5文件。
关于H5文件读写,可参考https://zhuanlan.zhihu.com/p/104145585?utm_source=wechat_session
更多推荐
已为社区贡献1条内容
所有评论(0)