1. 程式人生 > >panda中iloc和loc的區別

panda中iloc和loc的區別

Jiraiyafugui 2017-09-14 04:57:13
總結是最好的學習方法

pandas以類似字典的方式來獲取某一列的值,比如df['A'],這會得到df的A列。如果我們對某一行感興趣呢?這個時候有兩種方法,一種是iloc方法,另一種方法是loc方法。loc是指location的意思,iloc中的i是指integer。這兩者的區別如下:

  • loc works on labels in the index.
  • iloc works on the positions in the index (so it only takes integers).

也就是說loc是根據index來索引,比如下邊的df定義了一個index,那麼loc就根據這個index來索引對應的行。iloc並不是根據index來索引,而是根據行號來索引,行號從0開始,逐次加1。

In [1]: df = DataFrame(randn(5,2),index=range(0,10,2),columns=list('AB')) In [2]: df Out[2]: A B 0 1.068932 -0.794307 2 -0.470056 1.192211 4 -0.284561 0.756029 6 1.037563 -0.267820 8 -0.538478 -0.800654 In [5]: df.iloc[[2]] Out[5]: A B 4 -0.284561 0.756029 In [6]: df.loc[[2]] Out[6]: A B 2 -0.470056 1.192211