對(duì)pandas寫(xiě)入讀取h5文件的方法詳解
1、引言
通過(guò)參考相關(guān)博客對(duì)hdf5格式簡(jiǎn)要介紹。
hdf5在存儲(chǔ)的是支持壓縮,使用的方式是blosc,這個(gè)是速度最快的也是pandas默認(rèn)支持的。 使用壓縮可以提磁盤(pán)利用率,節(jié)省空間。 開(kāi)啟壓縮也沒(méi)有什么劣勢(shì),只會(huì)慢一點(diǎn)點(diǎn)。 壓縮在小數(shù)據(jù)量的時(shí)候優(yōu)勢(shì)不明顯,數(shù)據(jù)量大了才有優(yōu)勢(shì)。 同時(shí)發(fā)現(xiàn)hdf讀取文件的時(shí)候只能是一次寫(xiě),寫(xiě)的時(shí)候可以append,可以put,但是寫(xiě)完成了之后關(guān)閉文件,就不能再寫(xiě)了, 會(huì)覆蓋。
另外,為什么單獨(dú)說(shuō)pandas,主要因?yàn)楸救四壳皩?duì)于h5py這個(gè)包的理解不是很深入,不知道如果使用該包存pd.DataFrame格式的文件,不像numpy格式文件可以直接存儲(chǔ),因此本人只能依賴pandas自帶一些函數(shù)進(jìn)行處理。
2、寫(xiě)入文件
使用函數(shù):pd.HDFStore
import numpy as np import pandas as pd ####生成9000,0000條數(shù)據(jù),9千萬(wàn)條 a = np.random.standard_normal((90000000,4)) b = pd.DataFrame(a) ####普通格式存儲(chǔ): h5 = pd.HDFStore('/data/stock/test_s.h5','w') h5['data'] = b h5.close() ####壓縮格式存儲(chǔ) h5 = pd.HDFStore('/data/stock/test_c4.h5','w', complevel=4, complib='blosc') h5['data'] = b h5.close()
3、讀取文件
使用函數(shù):pd.read_hdf
參數(shù):文件名,key
data=pd.read_hdf('/data/stock/test_c4.h5',key='data')
以上這篇對(duì)pandas寫(xiě)入讀取h5文件的方法詳解就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
python爬蟲(chóng)添加請(qǐng)求頭代碼實(shí)例
這篇文章主要介紹了python爬蟲(chóng)添加請(qǐng)求頭代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12python 實(shí)現(xiàn)以相同規(guī)律打亂多組數(shù)據(jù)
這篇文章主要介紹了python 實(shí)現(xiàn)以相同規(guī)律打亂多組數(shù)據(jù),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-03-03Python使用eval函數(shù)解析和執(zhí)行字符串
在Python中,eval函數(shù)是一個(gè)非常強(qiáng)大的函數(shù),它可以將字符串作為代碼進(jìn)行解析和執(zhí)行,本文主要介紹了如何使用eval函數(shù)解析和執(zhí)行字符串,需要的可以了解下2024-01-01Python辦公自動(dòng)化從Excel中計(jì)算整理數(shù)據(jù)并寫(xiě)入Word
這篇文章主要為大家介紹了Python辦公自動(dòng)化從Excel中計(jì)算整理數(shù)據(jù)并寫(xiě)入Word示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06快速排序的四種python實(shí)現(xiàn)(推薦)
這篇文章主要介紹了python實(shí)現(xiàn)快速排序算法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04python小練習(xí)之爬魷魚(yú)游戲的評(píng)價(jià)生成詞云
讀萬(wàn)卷書(shū)不如行萬(wàn)里路,只學(xué)書(shū)上的理論是遠(yuǎn)遠(yuǎn)不夠的,只有在實(shí)戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用Python爬取熱火的魷魚(yú)游戲評(píng)價(jià),大家可以在過(guò)程中查缺補(bǔ)漏,提升水平2021-10-10Python?Pygame實(shí)戰(zhàn)之打磚塊小游戲
打磚塊最早是由雅達(dá)利公司開(kāi)發(fā)的一款獨(dú)立游戲,也是無(wú)數(shù)人的童年記憶。本文將利用Python中的Pygame模塊制作經(jīng)典的打磚塊游戲,需要的可以參考一下2022-02-02