1、创建文件和数据集
import h5py
import numpy as np
imgData = np.zeros((2,4))
f = h5py.File('HDF5_FILE.h5','w') #创建一个h5文件,文件指针是f
f['data'] = imgData #将数据写入文件的主键data下面
f['labels'] = np.array([1,2,3,4,5])#将数据写入文件的主键labels下面
f.close() #关闭文件
f = h5py.File('HDF5_FILE.h5','r') #打开h5文件
for key in f.keys():
print(f[key].name)
print(f[key].shape)
print(f[key].value)
输出结果:
/data
(2, 4)
[[ 0. 0. 0. 0.]
[ 0. 0. 0. 0.]]
/labels
(5,)
[1 2 3 4 5]
Process finished with exit code 0
写入读取pkl文件
1)字典基梁类型:
import pickle
dict_data={'name':["张三","李四"迅锋帆]}
with open("dict_data.pkl","wb") as fo:
pickle.dump(dict_data,fo)
with open("dict_data","rb") as fo:
dict_data=pickle.load(fo,encoding='bytes')
print(dict_data.keys())
print(dict_data)
print(dict_data["name"])
结果如下:
dict_keys(['name'])
{'name': ['张三', '李四']}
['张三', '李四']
2)列表类型
import pickle
list_data=["张三","李四"]
with open ("list_data","wb") as fo:
pickle.dump(list_data,fo)
with open("list_data","rb") as fo:
pickle.load(fo,encoding='bytes')
print(list_data)
print(list_data.keys())
pirnt(list_data["name"])
mat文件
mat数据格式是Matlab的数据存储的标准格式。在Matlab中主要使用load()函数导入一个mat文件,使用save()函数保存一个mat文件。对于文件data.mat:
load(‘data.mat')
save('data_1.mat','A')
其中'A’表示要保存的内容。
在python读取mat文件:
1、读取文件:
import scipy.io as scio
file1='E://data.mat'
data=scio.loadmat(file1)
注意,读取出来的data是字典格式,可以通过函数type(data)查看。亩雹
print type(data)
结果显示
<type 'dict'>
找到mat文件中的矩阵:
print data['A']
结果显示
"""
Created on Sun Nov 29 16:40:18 2020
本工具主要用于mat文件的读取(matlab-v7.3格式)
主要分为3个部分:1 常规培颂mat中的变量
2 mat文件中的cell内部数据读取
3 mat文件中的struct数据读取
@author: ZXY
"""
""大蚂"
1 常规mat中的变量
"""
import h5py
b=[]
#首先用h5py读取mat文件,并找到对应的struct 位置。
data = h5py.File("./1.mat",'r')
ecg=data["ecg"].value
"""
2 mat文件中的cell内部数据读取
"""
import h5py
b=[]
#首先用h5py读取mat文件,并找到对应的struct 位置。
data = h5py.File("./2.mat",'r')
zx1=data["滚中埋ecg_all"]#找到struct的顶部
for i in range(zx1.shape[0]):
ecg=data[zx1[i][0]].value
"""
3 mat文件中的struct数据读取
"""
import h5py
b=[]
#首先用h5py读取mat文件,并找到对应的struct 位置。
data = h5py.File("./3.mat",'r')
zx1=data["ecgpart"]#找到struct的顶部
test = data['ecgpart/data']#找到struct中要提取的子集
for i in test[:,0]:
ecg=zx1[i].value
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)