pandas中iloc、loc的用法和區別


loc和iloc的區別,這兩個有點容易混淆,因此需要特殊方式來加強記憶

總結:

1. loc使用范圍比iloc更廣更實用,loc可以使用切片、名稱(index,columns)、也可以切片和名稱混合使用;但是loc不能使用不存在的索引來充當切片取值,像-1

2. iloc只能用整數來取數

推薦使用loc


iloc: i可以看着int,因此iloc就是用數字(int)來取數據的.
iloc使用情況: 使用整數通過切片等方式取數
比如:

# 切片
# 下面兩種方法有同樣的效果; 表示取出df中1:5行(不包括5)和3:6列
1
df.iloc[1:5,3:6] 2 df.iloc[[1,2,3,4],[3,4,5]]
# 另外 df.iloc[0]、df.iloc[1]、df.iloc[-1] 分別表示第一行、第二行、最后一行
# 同理df.iloc[:,0]、df.iloc[:,1]、df.iloc[:,-1] 分別表示第一列、第二列、最后一列

 

loc的使用范圍要遠高於iloc, loc也能夠做到iloc的切片取數, 除了df.loc[-1]
loc使用情況:
使用切片、索引、列名稱查找
按條件(bool)查找

比如:

1 # 切片
2 hy_data.loc[2:4,]
3 hy_data.loc[[0,1,2,3],:]
4 # 切片和名稱混合
5 hy_data.loc[2:4,'用戶編號']
6 # 按條件取數
7 # 表示取出df中“行業分類”列值的長度等於6的所有行
8 hy_data.loc[hy_data['行業分類'].str.len() == 6, :]

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM