python中numpy如何存取文件-創(chuàng)新互聯(lián)

這篇文章給大家分享的是有關(guān)python中numpy如何存取文件的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。

成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作介紹好的網(wǎng)站是理念、設(shè)計(jì)和技術(shù)的結(jié)合。成都創(chuàng)新互聯(lián)擁有的網(wǎng)站設(shè)計(jì)理念、多方位的設(shè)計(jì)風(fēng)格、經(jīng)驗(yàn)豐富的設(shè)計(jì)團(tuán)隊(duì)。提供PC端+手機(jī)端網(wǎng)站建設(shè),用營銷思維進(jìn)行網(wǎng)站設(shè)計(jì)、采用先進(jìn)技術(shù)開源代碼、注重用戶體驗(yàn)與SEO基礎(chǔ),將技術(shù)與創(chuàng)意整合到網(wǎng)站之中,以契合客戶的方式做到創(chuàng)意性的視覺化效果。

 NumPy提供了多種存取數(shù)組內(nèi)容的文件操作函數(shù)。保存數(shù)組數(shù)據(jù)的文件可以是二進(jìn)制格式或者文本格式。二進(jìn)制格式的文件又分為NumPy專用的格式化二進(jìn)制類型和無格式類型。

numpy格式的文件可以保存為后綴為(.npy/.npz)格式的文件

1. tofile()和fromfile()

  • tofile()將數(shù)組中的數(shù)據(jù)以二進(jìn)制格式寫進(jìn)文件

  • tofile()輸出的數(shù)據(jù)不保存數(shù)組形狀和元素類型等信息

  • fromfile()函數(shù)讀回?cái)?shù)據(jù)時(shí)需要用戶指定元素類型,并對數(shù)組的形狀進(jìn)行適當(dāng)?shù)男薷?/p>

import numpy as np
# 隨機(jī)生成12個(gè)數(shù)字并將其有一維轉(zhuǎn)換成3*4的矩陣形式
a = np.arange(12)
print("一維數(shù)組:",a)
a.shape = 3,4
print("3*4的矩陣:",a)
# 將數(shù)組中的數(shù)據(jù)以二進(jìn)制格式寫入到文件
a.tofile('a.bin')
# fromfile在讀取numpy文件時(shí)需要自己指定數(shù)據(jù)格式,并且原格式并為保存
b1 = np.fromfile('a.bin', dtype=np.float) # 按照float讀取數(shù)據(jù)
b2 = np.fromfile('a.bin', dtype=np.int) # 按照int讀取數(shù)據(jù)
b3 = np.fromfile('a.bin', dtype=np.int32) # 按照int32讀取數(shù)據(jù)
print('float格式b1:{},\nint格式b2:{},\nint32格式b3:{}'.format(b1,b2,b3))
b3.shape = 3,4
print('b3:',b3)

python中numpy如何存取文件

2. save() 和 load(),savez()

  • NumPy專用的二進(jìn)制格式保存數(shù)據(jù),它們會(huì)自動(dòng)處理元素類型和形狀等信息

  • 如果想將多個(gè)數(shù)組保存到一個(gè)文件中,可以使用savez()

  • savez()的第一個(gè)參數(shù)是文件名,其后的參數(shù)都是需要保存的數(shù)組,也可以使用關(guān)鍵字參數(shù)為數(shù)組起名

  • 非關(guān)鍵字參數(shù)傳遞的數(shù)組會(huì)自動(dòng)起名為arr_0、arr_1、...。

  • savez()輸出的是一個(gè)擴(kuò)展名為npz的壓縮文件,其中每個(gè)文件都是一個(gè)save()保存的npy文件,文件名和數(shù)組名相同

  • load()自動(dòng)識別npz文件,并且返回一個(gè)類似于字典的對象,可以通過數(shù)組名作為鍵獲取數(shù)組的內(nèi)容

import numpy as np
a = np.arange(12)
a.shape = 3,4
# 將數(shù)據(jù)存儲(chǔ)為npy/npz
np.save('a.npy', a)
np.save('a.npz', a)
c = np.load('a.npy')
print('save-load:',c)
# 存儲(chǔ)多個(gè)數(shù)組
b1 = np.array([[6, 66, 666],[888, 88,8]])
b2 = np.arange(0, 1.0, 0.1)
c2 = np.sin(b2)
np.savez('result.npz', b1,b2,sin_arry = c)
c3 = np.load('result.npz') # npz文件時(shí)一個(gè)壓縮文件
print(c3)
print("數(shù)組b1:{}\n數(shù)組b2:{}\n數(shù)組sin_arry:{}".format(c3['arr_0'],c3['arr_1'],c3['sin_arry']))

python中numpy如何存取文件

 3. savetxt() 和 loadtxt()

  • 讀寫1維和2維數(shù)組的文本文件

  • 可以用它們讀寫CSV格式的文本文件

用這種方式來對數(shù)據(jù)進(jìn)行存儲(chǔ),方便深度學(xué)習(xí)中, 保存了訓(xùn)練集,驗(yàn)證集,測試集,還包括他們的標(biāo)簽,用這個(gè)方式存儲(chǔ)起來,要啥加載啥,文件數(shù)量大大減少,也不會(huì)到處改文件名。算是get到了另外一種好的存儲(chǔ)數(shù)據(jù)的方式

感謝各位的閱讀!關(guān)于“python中numpy如何存取文件”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。

網(wǎng)站欄目:python中numpy如何存取文件-創(chuàng)新互聯(lián)
網(wǎng)站路徑:http://muchs.cn/article22/dpcdjc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、網(wǎng)站建設(shè)網(wǎng)站改版、手機(jī)網(wǎng)站建設(shè)、網(wǎng)站排名網(wǎng)站設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)