聊聊Python pandas 中l(wèi)oc函數(shù)的使用,及跟iloc的區(qū)別說明
loc和iloc的意思
首先,loc是location的意思,和iloc中i的意思是指integer,所以它只接受整數(shù)作為參數(shù),詳情見下面。
loc和iloc的區(qū)別及用法展示
1.區(qū)別
loc works on labels in the index. iloc works on the positions in the index (so it only takes integers).
2.用法展示
首先創(chuàng)建一個dataframe:
1)loc為Selection by Label函數(shù),即為按標簽取數(shù)據(jù),標簽是什么,就是上面的'0'~‘4', ‘A'~‘B'。
例如第一個參數(shù)選擇index,第二個參數(shù)選擇column,如下圖:
建議寫df.loc[0, :],這樣可以清楚的看出為第0行的所有記錄,同樣如果取第'A'列的所有記錄,可以寫df.loc[:, ‘A'],如下圖:
:表示所有,[]里邊為先行后列。
2)iloc函數(shù)為Selection by Position,即按位置選擇數(shù)據(jù),即第n行,第n列數(shù)據(jù),只接受整型參數(shù)
記住,0:2為左閉右開區(qū)間,即取0,1,如下圖:
若要取第一列的所有數(shù)據(jù),則為df.iloc[:, 0],記住不接受'A'作為參數(shù),如下圖:
補充:只需一個例子幫你搞清并記住python loc和iloc
幫你區(qū)分python loc和iloc
最基本的概念loc通常用于行標簽和列標簽,iloc通常直接用于行序號和列序號,具體舉個例子幫助大家理解。
創(chuàng)建一個以abcd為索引,四行三列的Dataframe。
df = pd.DataFrame({'number':[10,20,30,20], '科目':['語文','數(shù)學(xué)','英語','化學(xué)'], '名稱':['小米','華為','蘋果','聯(lián)想']},index=['a','b','c','d']) print(df)
結(jié)果如圖所示 :
先來看loc:
print(df.loc['a':'c']) print(df.loc[['a','c']]) print(df.loc[:'c'])
分別輸出a行到c行;a行和c行;a行到c行。
如圖所示:
還可以設(shè)置取出某幾行某幾列:
print(df.loc[:'c',['number','科目']])
結(jié)果如下圖所示:取出a到c行的number和科目列。
如下圖所示:
loc基本用法就這些。實際上iloc用法和loc差不多,但iloc不是直接取已有索引。而是默認索引就是1,2,3,4~~~
同樣的我們用iloc做下上述操作。
print(df.iloc[0:3]) print(df.iloc[[0,2]]) print(df.iloc[:3])
結(jié)果同樣如上圖所示:
用iloc取出a到c行的number和科目列:
print(df.iloc[0:3,[0,1]])
結(jié)果如下圖所示:
我相信讀到這里大家應(yīng)該就理解了它們的用法。最后再提醒大家一下,loc不管行還是列調(diào)用的都是Dataframe自身的行標簽和列標簽。
而iloc調(diào)用的是行[1,2,3,4~],列[1,2,3,4]。
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
Python getsizeof()和getsize()區(qū)分詳解
這篇文章主要介紹了Python getsizeof()和getsize()區(qū)分詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11使用Django搭建網(wǎng)站實現(xiàn)商品分頁功能
這篇文章主要介紹了使用Django搭建網(wǎng)站實現(xiàn)商品分頁功能,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-05-05Python利用sqlacodegen自動生成ORM實體類示例
這篇文章主要介紹了Python利用sqlacodegen自動生成ORM實體類,結(jié)合實例形式分析了Python sqlacodegen安裝技巧ORM實體類相關(guān)實現(xiàn)技巧,需要的朋友可以參考下2019-06-06pymongo如何通過oplog獲取數(shù)據(jù)(mongodb)
使用MongoDB的oplog(操作日志)進行數(shù)據(jù)同步是高級的用法,主要用于復(fù)制和故障恢復(fù),這篇文章主要介紹了pymongo通過oplog獲取數(shù)據(jù)(mongodb),需要的朋友可以參考下2023-09-09Python入門教程(三十八)Python的NumPy庫簡介
這篇文章主要介紹了Python入門教程(三十八)Python的NumPy庫簡介,NumPy 是用于處理數(shù)組的 python 庫,它還擁有在線性代數(shù)、傅立葉變換和矩陣領(lǐng)域中工作的函數(shù),需要的朋友可以參考下2023-05-05