Pandas中关于数据索引iloc()和loc()的用法和区别

Pandas中关于数据索引使用iloc()和loc()的区别

导入train.csv数据

import pandas as pd
Data=pd.read_csv('train.csv',index_col=0) #index_col=0把第一列作为行索引
print(Data)

在这里插入图片描述
使用iloc来索引数据时,不考虑真实数据的索引名,如上数据中的列索引"位置","区"等,可以直接使用索引0,1,2,3,4,…来作为第一列/行,第二列/行等的索引。

a=Data.iloc[[1,2,3],[2,3,4]]#索引第2,3,4行和第3,4,5列的数据
print(a,type(a))

输出结果为:

    卧室数量  卫的数量  厅的数量
ID
1      1     0     0
2      2     2     1
3      3     2     2 <class 'pandas.core.frame.DataFrame'>

可以看到当使用[[],[]]这种格式的索引时,得到的数据类型为:
<class ‘pandas.core.frame.DataFrame’>


a=Data.iloc[1,[2,3,4]]#索引第2行和第3,4,5列的数据
print(a,type(a))

输出的结果为:

卧室数量    1
卫的数量    0
厅的数量    0
Name: 1, dtype: object <class 'pandas.core.series.Series'>

可以看到当使用[n,[]]这种格式的索引时,得到的数据类型为:
<class ‘pandas.core.series.Series’>


a=Data.iloc[1,2]#索引第2行和第3列的数据
print(a,type(a))

输出的结果为:

1 <class 'numpy.int64'>

可以看到当使用[n,m]这种格式的索引时,得到的数据类型为:
<class ‘numpy.int64’>得到的就是一个数


使用loc来索引数据时,需要考虑真实数据的索引名,如上数据中的列索引"位置","区"等,可以直接使用该索引来对数据索引。其使用效果和iloc一致。
这里只看一个例子:

a=Data.loc[[0,1,2,3],['小区名','位置']]
print(a,type(a))

输出的结果为:

    小区名  位置
ID
0   3072  118.0
1   3152  100.0
2   5575  130.0
3   3103   90.0 <class 'pandas.core.frame.DataFrame'>
  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值