Python工程實踐之np.loadtxt()讀取數(shù)據(jù)
前言
機器學(xué)習(xí)中使用np.loadtxt()可以高效的導(dǎo)入數(shù)據(jù),np.loadtxt()適合.txt文件和.csv文件。但是它默認(rèn)讀取float類型的值。
1.np.loadtxt()讀取txt文件
1-1 基礎(chǔ)參數(shù)
numpy.loadtxt( fname, dtype=, comments='#', delimiter=None, converters=None, skiprows=0, usecols=None, unpack=False, ndmin=0)
1-2 參數(shù)詳解
fname要讀取的文件、文件名、或生成器。
dtype數(shù)據(jù)類型,默認(rèn)float。
comments注釋。
delimiter分隔符,默認(rèn)是空格。
skiprows跳過前幾行讀取,默認(rèn)是0,必須是int整型。
usecols要讀取哪些列,0是第一列。例如,usecols = (1,4,5)將提取第2,第5和第6列。默認(rèn)讀取所有列。
unpack如果為True,將分列讀取。
1-3 應(yīng)用示例
文件的存儲路徑為:'./data.txt', 文件內(nèi)容如下:
1-3-1 fname
fname可以是文件的路徑也可以是要讀取的文件。
#根據(jù)文件名直接讀取 data = np.loadtxt('./data/data.csv')
1-3-2 dtype
dtype默認(rèn)為np.float32類型,也可以設(shè)置為其他類型,比如int。設(shè)置為其他dtype時需要考慮數(shù)據(jù)本身的類型。
#設(shè)置dtype data = np.loadtxt('./data/data.csv',dtype=np.float32) #設(shè)置dtype data = np.loadtxt('./data/data.csv',dtype=int)
1-3-3 comments
comment的是指, 如果行的開頭為comment的值,那在讀取時就會跳過該行。示例代碼中comment = '1',則在讀取數(shù)據(jù)時,會跳過開頭為1的行。
data = np.loadtxt('./data.txt',dtype = int,comments='1')
1-3-4 delimiter
delimiter是分隔符,默認(rèn)是空格。
data = np.loadtxt('./data.txt',dtype = int,comments='1',delimiter=' ')
我們改變一下數(shù)據(jù),將數(shù)據(jù)中的分隔符改為','之后再重新讀取。
data = np.loadtxt('./data.txt',dtype = int,delimiter=',')
1-3-5 skiprows
skiprows跳過前幾行讀取,默認(rèn)是0,必須是int整型。skiprows = 2則表示跳過前兩行讀取數(shù)據(jù)。
data = np.loadtxt('./data.txt',dtype = int,delimiter=',',skiprows=2)
讀取數(shù)據(jù)時,設(shè)定 skiprows = 2,則將前兩行跳過,從第三行開始讀取。
1-3-6 usecols
usecols要讀取哪些列,0是第一列。例如,usecols = (1,4,5)將提取第2,第5和第6列。默認(rèn)讀取所有列。
讀取第2列數(shù)據(jù)。
data = np.loadtxt('./data.txt',dtype = int,delimiter=',',usecols = 1)
讀取第2,6,9列數(shù)據(jù)。
data = np.loadtxt('./data.txt',dtype = int,delimiter=',',usecols =(1,5,8))
1-3-7 unpack
unpack如果設(shè)置為Ture,將分列讀取,類似于矩陣的轉(zhuǎn)置。
未設(shè)置之前,數(shù)據(jù)讀取時是以行為單位進行讀取。
設(shè)置unpack=Ture之后再次讀取,矩陣的列變?yōu)榱诵小?/p>
1-4 np.loadtxt()讀取csv文件
讀取csv文件與讀取txt文件的參數(shù)一致,需要注意的是csv文件的分隔符一般是“,”并且含有表頭,所以需要使用delimiter=','作為分隔符,以及使用skiprows=1跳過表頭。
原始csv文件內(nèi)容:
#根據(jù)data_path讀取文件內(nèi)容 train_XY = np.loadtxt(data_path, delimiter=',', skiprows = 1,dtype=np.float32)
總結(jié)
到此這篇關(guān)于Python工程實踐之np.loadtxt()讀取數(shù)據(jù)的文章就介紹到這了,更多相關(guān)np.loadtxt()讀取數(shù)據(jù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python實現(xiàn)計算長方形面積(帶參數(shù)函數(shù)demo)
今天小編就為大家分享一篇Python實現(xiàn)計算長方形面積(帶參數(shù)函數(shù)demo),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01jupyter notebook出現(xiàn)In[*]的問題及解決
這篇文章主要介紹了jupyter notebook出現(xiàn)In[*]的問題及解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-09-09Flask之pipenv虛擬環(huán)境的實現(xiàn)
這篇文章主要介紹了Flask之pipenv虛擬環(huán)境的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11Python 實現(xiàn)文件讀寫、坐標(biāo)尋址、查找替換功能
這篇文章主要介紹了Python 實現(xiàn)文件讀寫、坐標(biāo)尋址、查找替換功能,本文通過實例代碼給大家介紹的非常詳細,需要的朋友可以參考下2019-09-09