天天看點

《Python和HDF 5大資料應用》—2.3 HDF5工具

本節書摘來自異步社群《python和hdf 5大資料應用》一書中的第2章,第2.3節,作者[美]andrew collette(科萊特),胡世傑 譯,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視。

在後續章節裡,我們将建立大量的檔案,需要一種方法能夠獨立地檢視其中的内容。特别是當你需要将檔案歸檔或者共享給其他同僚的時候,對錯誤資料類型的檢查是越早越好。

hdfview是hdf組織提供的一個免費的圖形界面hdf5檔案浏覽器。雖然功能比較簡單,但它是用java寫的,是以在windows、linux和mac上都可以使用。它有一個内建的表格樣式的資料浏覽器,也能進行基本的繪圖功能。

圖2-2顯示了一個hdf5檔案的内容。左邊的面闆上列出了多個組。組1被打開,并顯示了其包含的資料集。其中一個資料集又被打開,其内容被顯示在右邊的表格視圖上。

《Python和HDF 5大資料應用》—2.3 HDF5工具

hdfview還允許你檢視資料叢集組的特征。基本上隻要是hdf5支援的資料類型它都支援,除了某些長度可變的資料結構。

vitables是另一個免費的圖形界面浏覽器,圖2-3顯示了同一個hdf5檔案在vitables上打開的界面。它為pytables檔案做了優化,不過也能完美處理原生的hdf5檔案。vitables的一大優勢在于它是随着某些版本的python打包安裝的,比如pythonxy,是以你可能已經擁有它了。

《Python和HDF 5大資料應用》—2.3 HDF5工具

本書多處用到了一個名字叫h5ls的程式,它可以列出hdf5檔案的内容。下例用h5ls列出了一個hdf5檔案包含的多個資料集和一個組:

《Python和HDF 5大資料應用》—2.3 HDF5工具

我們可以用-vlr選項來列印一些額外資訊并遞歸地列印組的成員:

《Python和HDF 5大資料應用》—2.3 HDF5工具

這個格式有點用了,我們可以看到array資料集内的對象的類型是本地整型,且是一個有10個元素的1維數組。同樣,在group組内有一個2維的subarray資料集,對象類型也是本地整型。

檢視中繼資料像這樣用h5ls就足夠了。還有一個叫做h5dump的程式,它以更為清晰的格式列印出資料。

《Python和HDF 5大資料應用》—2.3 HDF5工具