欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python3 hdf5文件 遍歷代碼

 更新時(shí)間:2021年05月19日 14:47:33   作者:運(yùn)動(dòng)碼農(nóng)  
這篇文章主要介紹了python3 hdf5文件 遍歷代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

看代碼吧~

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ì)用來(lái)存儲(chǔ)和組織大量數(shù)據(jù)的一組文件格式(HDF4,HDF5)。

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

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

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

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

h5py模塊

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

安裝模塊

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 開(kāi)始,所有的 dataset 和其它 group 都包含在此 group 下,當(dāng)操作 HDF5 文件時(shí),如果沒(méi)有顯式指定 group 的 dataset 都是默認(rèn)指 "/" 下的 dataset,另外類似相對(duì)文件路徑的 group 名字都是相對(duì)于 "/" 的。

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

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

寫(xiě)入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è)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python操作列表之List.insert()方法的使用

    Python操作列表之List.insert()方法的使用

    這篇文章主要介紹了Python操作列表之List.insert()方法的使用,是Python入門(mén)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-05-05
  • Python中pycharm編輯器界面風(fēng)格修改方法

    Python中pycharm編輯器界面風(fēng)格修改方法

    這篇文章主要介紹了Python中pycharm編輯器界面風(fēng)格修改方法,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-03-03
  • python實(shí)現(xiàn)在每個(gè)獨(dú)立進(jìn)程中運(yùn)行一個(gè)函數(shù)的方法

    python實(shí)現(xiàn)在每個(gè)獨(dú)立進(jìn)程中運(yùn)行一個(gè)函數(shù)的方法

    這篇文章主要介紹了python實(shí)現(xiàn)在每個(gè)獨(dú)立進(jìn)程中運(yùn)行一個(gè)函數(shù)的方法,涉及Python操作進(jìn)程的相關(guān)技巧,需要的朋友可以參考下
    2015-04-04
  • C站最全Python標(biāo)準(zhǔn)庫(kù)總結(jié),你想要的都在這里

    C站最全Python標(biāo)準(zhǔn)庫(kù)總結(jié),你想要的都在這里

    這篇文章主要介紹了C站最全的Python標(biāo)準(zhǔn)庫(kù),總共包含10個(gè)類型,希望能對(duì)大家有幫助,看完不虧系列
    2021-07-07
  • python中的_和__用法及說(shuō)明

    python中的_和__用法及說(shuō)明

    這篇文章主要介紹了python中的_和__用法及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • Tensorflow中使用tfrecord方式讀取數(shù)據(jù)的方法

    Tensorflow中使用tfrecord方式讀取數(shù)據(jù)的方法

    這篇文章主要介紹了Tensorflow中使用tfrecord方式讀取數(shù)據(jù)的方法,適用于數(shù)據(jù)較多時(shí),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-06-06
  • 如何將Yolov5的detect.py修改為可以直接調(diào)用的函數(shù)詳解

    如何將Yolov5的detect.py修改為可以直接調(diào)用的函數(shù)詳解

    YOLOv4還沒(méi)有退熱,YOLOv5已經(jīng)發(fā)布,下面這篇文章主要給大家介紹了關(guān)于如何將Yolov5的detect.py修改為可以直接調(diào)用的函數(shù)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-04-04
  • 基于Python實(shí)現(xiàn)語(yǔ)音識(shí)別功能

    基于Python實(shí)現(xiàn)語(yǔ)音識(shí)別功能

    這篇文章給大家介紹了如何基于Python實(shí)現(xiàn)語(yǔ)音識(shí)別功能,文中通過(guò)代碼示例給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,具有一定的參考價(jià)值,需要的朋友可以參考下
    2023-12-12
  • PyQt5中QButtonGroup的用法解析與案例分享

    PyQt5中QButtonGroup的用法解析與案例分享

    在PyQt5中,QButtonGroup是一個(gè)非常有用的類,它提供了一個(gè)抽象的按鈕容器,允許開(kāi)發(fā)者將多個(gè)按鈕劃分為一個(gè)組,本教程將詳細(xì)介紹QButtonGroup的創(chuàng)建、使用、信號(hào)槽連接以及在實(shí)際項(xiàng)目中的應(yīng)用案例,需要的朋友可以參考下
    2024-08-08
  • 深入了解Python中的時(shí)間處理函數(shù)

    深入了解Python中的時(shí)間處理函數(shù)

    這篇文章主要是和大家一起探索python中的時(shí)間處理函數(shù),讓大家徹底弄懂時(shí)間處理。文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2021-12-12

最新評(píng)論