1.区别

 

(1)都用于选择数据

(2)适用于pandas中的两种数据类型,Series\DataFrame

(3)loc 是基于行或列的标签进行选择、iloc是基于行号索引或列号索引进行选择、ix通过行号列号索引或行号列号进行选择

2.实例

(1)loc[[行标签],[列标签]]

import  pandas as pd
df1=pd.DataFrame({
    'A':['A0','A1','A2','A3'],
    'B':['B0','B1','B2','B3'],
    'C':['C0','C1','C2','C3'],
    'D': ['D0', 'D1', 'D2', 'D3']
},
index=[0,1,2,3])
print(df1.loc[[0,3],['A','B']])

  结果

    A   B
0  A0  B0
3  A3  B3

(2)iloc[行号:行号,列号:列号]

import  pandas as pd
df1=pd.DataFrame({
    'A':['A0','A1','A2','A3'],
    'B':['B0','B1','B2','B3'],
    'C':['C0','C1','C2','C3'],
    'D': ['D0', 'D1', 'D2', 'D3']
},
index=[0,1,2,3])
print(df1.iloc[:2,[2]])

  结果

    C
0  C0
1  C1

 iloc[[行号],[列号]]

import  pandas as pd
df1=pd.DataFrame({
    'A':['A0','A1','A2','A3'],
    'B':['B0','B1','B2','B3'],
    'C':['C0','C1','C2','C3'],
    'D': ['D0', 'D1', 'D2', 'D3']
},
index=[0,1,2,3])
print(df1.iloc[[0,1,2],[0,1]])

  结果

    A   B
0  A0  B0
1  A1  B1
2  A2  B2

(3)ix[[行标签],[列标签]]

import  pandas as pd
df1=pd.DataFrame({
    'A':['A0','A1','A2','A3'],
    'B':['B0','B1','B2','B3'],
    'C':['C0','C1','C2','C3'],
    'D': ['D0', 'D1', 'D2', 'D3']
},
index=list('abcd'))
print(df1.ix[['a','b'],['B','C']])

  结果

    B   C
a  B0  C0
b  B1  C1

  ix[[行号],[列号]] 

import  pandas as pd
df1=pd.DataFrame({
    'A':['A0','A1','A2','A3'],
    'B':['B0','B1','B2','B3'],
    'C':['C0','C1','C2','C3'],
    'D': ['D0', 'D1', 'D2', 'D3']
},
index=list('abcd'))
print(df1.ix[[0,1],[1,2]])

  结果

    B   C
a  B0  C0
b  B1  C1

  ix[[行标签],[列号]]

import  pandas as pd
df1=pd.DataFrame({
    'A':['A0','A1','A2','A3'],
    'B':['B0','B1','B2','B3'],
    'C':['C0','C1','C2','C3'],
    'D': ['D0', 'D1', 'D2', 'D3']
},
index=list('abcd'))
print(df1.ix[['a','b'],[1,2]])

  结果

    B   C
a  B0  C0
b  B1  C1

  (4)自带的切片功能

df[[行标签]][行号]

import  pandas as pd
df1=pd.DataFrame({
    'A':['A0','A1','A2','A3'],
    'B':['B0','B1','B2','B3'],
    'C':['C0','C1','C2','C3'],
    'D': ['D0', 'D1', 'D2', 'D3']
},
index=list('abcd'))
print(df1[['B','C']][0:2])

  结果

    B   C
a  B0  C0
b  B1  C1

  

posted on 2018-08-11 17:38  objectArx2008  阅读(260)  评论(0编辑  收藏  举报