python保存数据方式(npy, pkl, h5, pt, npz)

python保存数据方式(npy, pkl, h5, pt, npz),第1张

利用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

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/793695.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-06
下一篇 2022-05-06

发表评论

登录后才能评论

评论列表(0条)

保存