loc,iloc,ix的区别

loc,iloc,ix  三者的区别

loc只能通过index和columns来取,不能用数字
iloc只能用数字索引,不能用索引名
ix可以用数字索引,也可以用index和column索引(也是将loc和iloc结合)

import pandas as pd
import numpy  as np
df = pd.DataFrame(
    {'a': [1, 5, 9, 13, 17],
     'b': [2, 6, 10, 14, 18],
     'c': [3, 7, 11, 15, 19],
     'd': [4, 8, 12, 16, 20]},
    index=['one','two','three','four','five'])

df

loc,iloc,ix的区别_第1张图片

  一  loc   

1.

df.loc['two','d']   # two行的d列 

2.

df.loc['one':'three','c']   # one-three行的 c列 

loc,iloc,ix的区别_第2张图片

3.

df.loc['one':'three','a':'d']    # one-three行的 a-d列 

loc,iloc,ix的区别_第3张图片

4.

df.loc['one':'three',['a','d']]   # one-three行的 a列和d列 

loc,iloc,ix的区别_第4张图片

 

二  iloc

1.

df.iloc[1:3]   #索引取值,包括开始不包括结束 第二行和第三行

loc,iloc,ix的区别_第5张图片

2.

df.iloc[2]   # 索引2  第三行值 以Series展示

loc,iloc,ix的区别_第6张图片

3.

df.iloc[1:3,1:3]   # 第二行到第三行 第二列到第三列

loc,iloc,ix的区别_第7张图片

 

4.

df.iloc[[1,2,4],[2,3]]   # 第一行和第三行 和第五行  第三列 第四列

loc,iloc,ix的区别_第8张图片

 

   ix

1.

df['c']

loc,iloc,ix的区别_第9张图片

2.

df[['c','d']]   #取c、d两列

loc,iloc,ix的区别_第10张图片

3.

df.ix[1]  

4.

df.ix['one':'three']     #  取one到three行

loc,iloc,ix的区别_第11张图片

 

5.

df.ix[0:3,1]  #取第0到2行,第2列

6.

df.ix[0:1,'b']     #取第0行,a列

7.

df.ix[0:3,'b':'d ']    #取第0到2行,b到c列

loc,iloc,ix的区别_第12张图片

8.

df.ix['one':'three','a':'d']   # one到three行  a到d列

loc,iloc,ix的区别_第13张图片

9.

 df.ix[0:1,1:3]   # 零行 二列和三列

 

 

 

 

 

 

 

 

你可能感兴趣的:(loc,iloc,ix的区别)