pandas數據索引:loc、iloc和ix

1、loc

通過行標籤索引行數據

 (1)、loc[‘d’]:獲取第’d’行數據

import pandas as pd  
data = [[1,2,3],[4,5,6]]  
index = [‘d’,'e']  
columns=['a','b','c']  
df = pd.DataFrame(data=data, index=index, columns=columns)  
print(df.loc['e']) 
a    4
b    5
c    6
Name: 1, dtype: int64
(2)、loc['d':]獲取第‘d’行及之後的多行數據
import pandas as pd  
data = [[1,2,3],[4,5,6]]  
index = ['d','e']  
columns=['a','b','c']  
df = pd.DataFrame(data=data, index=index, columns=columns)  
print(df.loc['d':])
   a  b  c
d  1  2  3
e  4  5  6
(3)、loc['d',['b']]索引第‘d’行第‘b’列

import pandas as pd  
data = [[1,2,3],[4,5,6]]  
index = ['d','e']  
columns=['a','b','c']  
df = pd.DataFrame(data=data, index=index, columns=columns)  
print(df.loc['d',['b']])
b    2
Name: d, dtype: int64
通過df.[列標籤]可直接獲取某列數據,但當標籤未知時可通過這種方式獲取列數據

2、iloc

通過行號獲取行數據

(1)、iloc[1]獲取第1行數據

import pandas as pd  
data = [[1,2,3],[4,5,6]]  
index = ['d','e']  
columns=['a','b','c']  
df = pd.DataFrame(data=data, index=index, columns=columns)  
print(df.iloc[1]) 
a    4
b    5
c    6
Name: e, dtype: int64
(2)、iloc[0:]獲取第0行及之後的多行數據

import pandas as pd  
data = [[1,2,3],[4,5,6]]  
index = ['d','e']  
columns=['a','b','c']  
df = pd.DataFrame(data=data, index=index, columns=columns)  
print(df.iloc[0:])
   a  b  c
d  1  2  3
e  4  5  6
(3)、iloc[:,[1]]獲取第1列數據
import pandas as pd  
data = [[1,2,3],[4,5,6]]  
index = ['d','e']  
columns=['a','b','c']  
df = pd.DataFrame(data=data, index=index, columns=columns)  
print(df.iloc[:,[1]])
   b
d  2
e  5
3、ix

前兩種的混合索引,Python3已經不使用這種索引方式。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章