Python工程實(shí)踐之np.loadtxt()讀取數(shù)據(jù)
前言
機(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ù)讀取時是以行為單位進(jìn)行讀取。

設(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工程實(shí)踐之np.loadtxt()讀取數(shù)據(jù)的文章就介紹到這了,更多相關(guān)np.loadtxt()讀取數(shù)據(jù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python高效實(shí)現(xiàn)PDF文件壓縮的三大庫使用指南
在日常工作中,壓縮 PDF 文件是一項非常常見的任務(wù),為了幫助你更輕松地完成這項任務(wù),本文將介紹 三個最實(shí)用的 Python 庫,讓你能夠批量、快速地壓縮 PDF 文件,快跟隨小編一起學(xué)習(xí)一下吧2025-10-10
VS?code終端中python選擇解釋器(interpreter)報錯解決方式
VS Code是當(dāng)前最受歡迎的代碼編輯器之一,對Python開發(fā)的支持也非常友好,這篇文章主要介紹了VS?code終端中python選擇解釋器(interpreter)報錯解決方式,需要的朋友可以參考下2025-08-08
python實(shí)現(xiàn)Flappy Bird源碼
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)Flappy Bird源碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-12-12
Python?解釋器的站點(diǎn)配置和模塊搜索路徑詳解
Python?解釋器的站點(diǎn)配置是指一組配置和路徑設(shè)置,用于支持特定于站點(diǎn)的定制和擴(kuò)展,這些配置和路徑信息由?Python?的內(nèi)置?site?模塊提供,這篇文章主要介紹了Python?解釋器的站點(diǎn)配置和模塊搜索路徑詳解,需要的朋友可以參考下2022-01-01
面向?qū)ο缶幊蹋∣OP)是一種程序設(shè)計思想,以類和對象創(chuàng)建模型以描述真實(shí)世界,可使程序維護(hù)和擴(kuò)展更簡單,提高程序開發(fā)效率,面向?qū)ο蠛兔嫦蜻^程是兩種主要的編程思想,面向?qū)ο蟮某绦蛞詫ο笞鳛槌绦虻幕締卧?/div> 2024-10-10
keras分類之二分類實(shí)例(Cat and dog)
這篇文章主要介紹了keras分類之二分類實(shí)例(Cat and dog),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-07-07最新評論

