人妖在线一区,国产日韩欧美一区二区综合在线,国产啪精品视频网站免费,欧美内射深插日本少妇

新聞動(dòng)態(tài)

python3 hdf5文件 遍歷代碼

發(fā)布日期:2022-06-13 14:43 | 文章來源:CSDN

看代碼吧~

import h5py
import numpy as np
f = h5py.File('train/e1_1.hdf5')
key = ""
for k in f.keys():
 key = k
d = f[key]
print(d)
a = np.ones(d.shape)
d.read_direct(a)
print(a)
f.close()

補(bǔ)充:HDF5 文件及Python模塊之h5py

HDF5文件

什么是HDF5文件呢?

先引用一波維基百科的介紹,『層級(jí)數(shù)據(jù)格式(Hierarchical Data Format:HDF)是設(shè)計(jì)用來存儲(chǔ)和組織大量數(shù)據(jù)的一組文件格式(HDF4,HDF5)。

它最初開發(fā)于美國國家超級(jí)計(jì)算應(yīng)用中心,現(xiàn)在由非營(yíng)利社團(tuán)HDF Group支持,其任務(wù)是確保HDF5技術(shù)的持續(xù)開發(fā)和存儲(chǔ)在HDF中數(shù)據(jù)的持續(xù)可訪問性?!弧?/p>

HDF5 擁有一系列的優(yōu)異特性,使其特別適合進(jìn)行大量科學(xué)數(shù)據(jù)的存儲(chǔ)和操作,如它支持非常多的數(shù)據(jù)類型,靈活,通用,跨平臺(tái),可擴(kuò)展,高效的 I/O 性能,支持幾乎無限量(高達(dá) EB)的單文件存儲(chǔ)等

如何在Linux中查看hdf5文件呢?

h5ls info.h5
# key1 Dataset {10000}
# key2 Dataset {10000,5}
# key3 Dataset {20000,30}

h5py模塊

我們可以使用Python非常方便的讀寫hdf5文件,最常用的模塊就是h5py。下面說明一下它的安裝及使用方法:

安裝模塊

pip install h5py
pip install numpy
# numpy 通常是作為配合使用

對(duì)h5py的總結(jié):

『一個(gè) HDF5 文件是存儲(chǔ)兩類對(duì)象的容器,這兩類對(duì)象分別為:

dataset:類似數(shù)組的數(shù)據(jù)集合; gropp;類似目錄的容器,其中可以包含一個(gè)或多個(gè) dataset 及其它的 group。

一個(gè) HDF5 文件從一個(gè)命名為 "/" 的 group 開始,所有的 dataset 和其它 group 都包含在此 group 下,當(dāng)操作 HDF5 文件時(shí),如果沒有顯式指定 group 的 dataset 都是默認(rèn)指 "/" 下的 dataset,另外類似相對(duì)文件路徑的 group 名字都是相對(duì)于 "/" 的。

HDF5 文件的 dataset 和 group 都可以擁有描述性的元數(shù)據(jù),稱作 attribute。

用 h5py 操作 HDF5 文件,我們可以像使用目錄一樣使用 group,像使用 numpy 數(shù)組一樣使用 dataset,像使用字典一樣使用屬性,非常方便和易用。』

寫入hdf5文件

import h5py
import numpy as np
# 如果你要在根group下創(chuàng)建dataset
f = h5py.File('info.h5', 'w')
values1 = np.arange(12).reshape(4, 3)
values2 = np.arange(20).reshape(4, 5)
f.create_dataset(name='key1', data=np.array(values1, dtype='int64'))
f.create_dataset(name='key2', data=np.array(values2, dtype='int64'))
# 如果你要?jiǎng)?chuàng)建一個(gè)group(目錄)
# 然后指定dataset放置的group
f.create_group('/dir1')
f.create_group('/dir1/dir2')
data = np.arange(6).reshape(3, 2)
f.create_dataset('/dir1/dir2', data=data)
# 最后別忘了關(guān)閉文件
f.close()

讀取hdf5文件

import h5py
with h5py.File(info.h5, 'r') as f:
 values1 = f['key1'].value
 values2 = f['key2'].value

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持本站。

海外服務(wù)器租用

版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。

相關(guān)文章

實(shí)時(shí)開通

自選配置、實(shí)時(shí)開通

免備案

全球線路精選!

全天候客戶服務(wù)

7x24全年不間斷在線

專屬顧問服務(wù)

1對(duì)1客戶咨詢顧問

在線
客服

在線客服:7*24小時(shí)在線

客服
熱線

400-630-3752
7*24小時(shí)客服服務(wù)熱線

關(guān)注
微信

關(guān)注官方微信
頂部