日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

【python基础】h5py库的基本使用

發布時間:2024/8/1 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【python基础】h5py库的基本使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

HDF(Hierarchical Data Format)是一種通用的跨平臺、壓縮性優異、靈活的數據存儲結構,常用作科學數據的保存。而h5py則是python提供的HDF文件處理庫。

h5py的核心概念包括:
(1)文件file,作為一種層次化的數據容器,file可理解為樹根;
(2)組group,存儲的索引,相當于樹的節點;
(3)數據集dataset,索引對應的存儲數據,相當于節點內存儲的數據;
(4)屬性attr,用來存儲額外的小塊元數據。

h5py支持層次化的group嵌套,如果將其類比于json格式,則group為key(索引),而group為value(數據)。

下面給出其典型的應用案例:

import numpy as np import h5py# 1. 寫入 f = h5py.File('./demo.h5', 'w') # 打開文件,更推薦用with管理上下文print(f.name) # '/', file相當于root print(f.keys()) # <KeysViewHDF5 []>, 所有group的名稱,相當于索引# 直接賦值 A = np.random.rand(100,100) f['numpy_A'] = A # f[key]=value直接賦值,存儲對應的group(numpy_A)和dataset(A) for name in f: # 等同于for name in f.keys()print(name) # numpy_A# 創建組 f.create_group('group_1') # 和numpy_A同級 print(f.keys()) # numpy_A group_1# 組內通過賦值的方式創建dataset B = np.random.rand(200,200) f['group_1']['numpy_B'] = B# 通過create_dataset創建dataset f['group_1'].create_dataset('mydataset', (10, 10), dtype='f')# 通過/直接同時創建group和dataset f.create_dataset('group_2/mydataset2', (20,20), dtype='f') print(f.keys()) # group_1 group_2 numpy_A# 創建屬性 f.attrs['name'] = 'Mia' # 關閉,存儲 f.close()# 2. 讀取 f = h5py.File('./demo.h5', 'r')print(f.keys())# 獲取屬性的key print(f.attrs.keys())# 遞歸遍歷 f.visit(lambda x:print(x))

總結

以上是生活随笔為你收集整理的【python基础】h5py库的基本使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。