.loc 与.iloc

部署运行你感兴趣的模型镜像

Python中的Pandas库根据位置取值可以用.loc.iloc以及.ix,还可以通过每一行的索引和列的索引,把需要的行和列单独取出来

Pandas详解可以看下面这两篇文章:

十分钟掌握Pandas(上)

十分钟掌握Pandas(下)

 

iloc:根据标签的所在位置,从0开始计数,先选取行再选取列

loc:根据DataFrame的具体标签选取行列,同样是先行标签,后列标签

 

一、当每列已有column name时,用 df [ 'a' ] 就能选取出一整列数据。如果你知道column names 和index,且两者都很好输入,可以选择 .loc

import numpy as np
import pandas as pd
df=pd.DataFrame(np.arange(0,200,2).reshape(10,10),columns=list('abcdefghij'))
print(df)
print (df.loc[[1,5],['a','b']])

输出了完整的df,以及第1行和第5行且column name为a和b的数据,由于没有命名index,所以数字0-9是DataFrame自动赋予的

二、如果column name太长,输入不方便,或者index是一列时间序列,更不好输入。那就可以选择 .iloc了。

import numpy as np
import pandas as pd
df=pd.DataFrame(np.arange(0,200,2).reshape(10,10),columns=list('abcdefghij'))
print (df.iloc[2,1])
print (df.iloc[:5,5])

输出了第2行第1列的数据42,以及index为0-4第6列 f的数据。.iloc 使得我们可以对column使用slice(切片)的方法对数据进行选取。

三、.ix 的功能十分强大,它允许我们混合使用下标和名称进行选取。

df.ix [ [ ..1.. ], [..2..] ],  1框内必须统一,必须同时是下标或者名称,2框也一样。 

import numpy as np
import pandas as pd
df=pd.DataFrame(np.arange(0,200,2).reshape(10,10),columns=list('abcdefghij'))
print (df.ix[[2,3],[1,2]])

但是一般情况下不建议采用。

您可能感兴趣的与本文相关的镜像

Python3.10

Python3.10

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值