DataFrame中loc、iloc、ix的区别

转载自「python」DataFrame中loc、iloc、ix的区别

iloc,loc的使用

在使用DataFrame数据类型的过程中,常要使用到iloc、loc、ix,总结一下三者的不同

import pandas as pd
data = pd.DataFrame({'A':[1,2,3],'B':[4,5,6],'C':[7,8,9]})

生成的data如下:

indexABC
0147
1258
2369

loc的使用

取值操作

.loc[ ]中括号里面是先行后列,以逗号分隔,行和列分别是行标签和列标签,比如我要得到数字5,那么:

data.loc[1,'B']
  1. 如果这个DataFrame有index 值的话,也可以将index值放在第一个参数位,比如index=[a, b, c] ,那么 data.loc[‘b’,‘B’]也可以取出5
  2. 如果这个DataFrame的columns没有值得的话,data.loc[1,1]也可取出5

切片操作

data.loc[1:2,'B':'C']

总结:使用loc 时候,必须使用行或者列的name,如果行或列没有name,则可以使用其索引值,可以单独取值,可以做切片操作

iloc的使用

同loc一样,先行后列,不过不能使用行标签,只能使用行索引,和列索引来取数,或者进行切片操作,同样想取出5 的话,只能

data.iloc[1,1]

注意:

data.iloc[1:2,:]

切片data.iloc[1:2,:] 只能取出来行索引为1的行,而不能取2,
切片data.loc[1:2,:] 可以取出行索引为1,2的行

总结:使用iloc 时候,必须使用行或者列的索引,另外注意切片与loc的区别

  • 5
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值