最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python操作HDF5文件示例

 更新時間:2022年06月28日 11:36:10   作者:學(xué)而時習(xí)之_不亦說乎  
這篇文章主要為大家介紹了Python操作HDF5文件示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪

引言

Matlab操作HDF5文件中已經(jīng)詳細(xì)介紹了HDF5文件已經(jīng)利用Matlab對其進行操作的方法。這篇文章總結(jié)一下如何在Python下使用HDF5文件。我們?nèi)匀话凑誐atlab操作HDF5文件的順序進行,分別是創(chuàng)建HDF5文件,寫入數(shù)據(jù),讀取數(shù)據(jù)。

Python下的HDF5文件依賴h5py工具包

創(chuàng)建文件和數(shù)據(jù)集

使用`h5py.File()方法創(chuàng)建hdf5文件

h5file = h5py.File(filename,'w')

然后在此基礎(chǔ)上創(chuàng)建數(shù)據(jù)集

X = h5file.create_dataset(shape=(0,args.patch_size,args.patch_size),             #數(shù)據(jù)集的維度
                              maxshape = (None,args.patch_size,args.patch_size),                #數(shù)據(jù)集的允許最大維度 
                              dtype=float,compression='gzip',name='train',                      #數(shù)據(jù)類型、是否壓縮,以及數(shù)據(jù)集的名字
                              chunks=(args.chunk_size,args.patch_size,args.patch_size))         #分塊存儲,每一分塊的大小

最為關(guān)系的兩個參數(shù)為shape和maxshape,很顯然我們希望數(shù)據(jù)集的某一個維度是可以擴展的,所以在maxshape中,將希望擴展的維度標(biāo)記為None,其他維度和shape參數(shù)里面的一樣。還有一點值得注意的是,使用compression='gzip'以后,整個數(shù)據(jù)集能夠被極大的壓縮,對比較大的數(shù)據(jù)集非常又用,并且在數(shù)據(jù)讀寫的時候,不用用戶顯式的解碼。

寫數(shù)據(jù)集

在使用上面的creat_dataset創(chuàng)建了dataset以后,讀寫數(shù)據(jù)集就如同讀寫numpy數(shù)組一樣方便,比如上面的函數(shù)定義了數(shù)據(jù)集'train',也就是變量X以后,可以下面的方法來讀寫:

data = np.zeros((100,args.patch_size,arg))
X[0:100,:,:] = data

在前面創(chuàng)建數(shù)據(jù)集的時候,我們定義shape = (args.chunk_size,args.patch_size,args.patch_size),如果有更多的數(shù)據(jù),怎么辦呢?

可以使用resize方法來擴展在maxshape中定義為None的那個維度:

X.resize(X.shape[0]+args.chunk_size,axis=0)

因為我們在maxshape=(None,args.patch_size,args.patch_size)中將第零個維度定義為可擴展,所以,首先我們用X.shape[0]來找到該維度的長度,并將其擴展。該維度擴展以后,就可以繼續(xù)向里面寫入數(shù)據(jù)了。

讀數(shù)據(jù)集

讀取h5文件的方法也非常簡單,首先利用h5py.File方法打開對應(yīng)的h5文件,然后將里面的某個數(shù)據(jù)集取出至變量,對這個變量的讀取就如同numpy一樣了。

h = h5py.File(hd5file,'r')
train = h['train']
train[1]
train[2]
...

但是上面的讀取方法存在一個問題就是每一次使用的時候(train[1],train[2])都需要從硬盤讀取數(shù)據(jù),這將會導(dǎo)致讀取的速度比較慢。一個比較好的方法是,每次從硬盤讀取一個chunk_size的數(shù)據(jù),然后將這些數(shù)據(jù)存儲到內(nèi)存中,在需要的時候從內(nèi)存中讀取,比如使用下面的方法:

h = h5py.File(hd5file,'r')
train = h['train']
X = train[0:100]         #一次從硬盤中讀取比較多的數(shù)據(jù),X將存儲在內(nèi)存中
X[1]                     #從內(nèi)存中讀取
X[2]                     #從內(nèi)存中讀取

這樣的方法就會快很多。

以上就是Python操作HDF5文件示例的詳細(xì)內(nèi)容,更多關(guān)于Python操作HDF5文件的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 用python-webdriver實現(xiàn)自動填表的示例代碼

    用python-webdriver實現(xiàn)自動填表的示例代碼

    這篇文章主要介紹了用python-webdriver實現(xiàn)自動填表的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • 教你如何使Python爬取酷我在線音樂

    教你如何使Python爬取酷我在線音樂

    這篇文章主要介紹了如何利用?Python?實現(xiàn)酷我在線音樂的爬取,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起了解一下
    2022-04-04
  • 詳解使用python爬取抖音app視頻(appium可以操控手機)

    詳解使用python爬取抖音app視頻(appium可以操控手機)

    這篇文章主要介紹了詳解使用python爬取抖音app視頻(appium可以操控手機),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • 淺談Python中的可變對象和不可變對象

    淺談Python中的可變對象和不可變對象

    下面小編就為大家?guī)硪黄獪\談Python中的可變對象和不可變對象。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • Django實現(xiàn)上傳圖片功能

    Django實現(xiàn)上傳圖片功能

    這篇文章為大家詳細(xì)主要介紹了Django實現(xiàn)上傳圖片,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • Python中提升圖片清晰度的四種方法

    Python中提升圖片清晰度的四種方法

    這篇文章主要為大家詳細(xì)介紹了Python中提升圖片清晰度的四種常用方法,文中的示例代碼簡潔易懂,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-02-02
  • python中從str中提取元素到list以及將list轉(zhuǎn)換為str的方法

    python中從str中提取元素到list以及將list轉(zhuǎn)換為str的方法

    今天小編就為大家分享一篇python中從str中提取元素到list以及將list轉(zhuǎn)換為str的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • python任務(wù)調(diào)度實例分析

    python任務(wù)調(diào)度實例分析

    這篇文章主要介紹了python任務(wù)調(diào)度實現(xiàn)方法,實例分析了任務(wù)調(diào)度的原理與Python實現(xiàn)方法,需要的朋友可以參考下
    2015-05-05
  • python與matlab一些常用函數(shù)互轉(zhuǎn)問題

    python與matlab一些常用函數(shù)互轉(zhuǎn)問題

    這篇文章主要介紹了python與matlab一些常用函數(shù)互轉(zhuǎn),包括十六進制字節(jié)流數(shù)據(jù)的相關(guān)知識,本文通過示例代碼給大家講解的非常詳細(xì),需要的朋友可以參考下
    2022-12-12
  • Python使用Numpy模塊讀取文件并繪制圖片

    Python使用Numpy模塊讀取文件并繪制圖片

    這篇文章主要介紹了Python使用Numpy模塊讀取文件并繪制圖片,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-05-05

最新評論

左贡县| 汨罗市| 阳江市| 鹤壁市| 宁夏| 南阳市| 潞西市| 天祝| 兴化市| 南靖县| 广安市| 平南县| 曲沃县| 承德县| 容城县| 寿阳县| 阿瓦提县| 凭祥市| 德保县| 井陉县| 康马县| 诸暨市| 呈贡县| 安仁县| 新民市| 扶余县| 横峰县| 海城市| 临湘市| 巴楚县| 陈巴尔虎旗| 周口市| 湖州市| 石泉县| 西乌珠穆沁旗| 溧水县| 攀枝花市| 上林县| 剑川县| 晋宁县| 三明市|