python pandas中索引函数loc和iloc的区别分析

 更新时间:2021年09月27日 10:23:40   作者:hanyunkaka  
在数据分析过程中,很多时候我们需要从数据表中提取出我们需要的部分,而这么做的前提是我们需要先索引出这一部分数据,下面这篇文章主要给大家介绍了关于python pandas中索引函数loc和iloc区别的相关资料,需要的朋友可以参考下

前言

使用pandas进行数据分析的时候,我们经常需要对DataFrame的行或者列进行索引。使用pandas进行索引的方法主要有三种:直接使用行或者列标签、loc函数和iloc函数。

 举个简单的例子:

import numpy as np
import pandas as pd
df = pd.DataFrame({"Fruits":["apple","pear","banana","watermelon"],"Price":[1.2,1.4,2.3,4.2],"Sales":[11,45,25,16]})
df

生成的DataFrame如下所示:

Fruits Price Sales
0 apple 1.2 11
1 pear 1.4 45
2 banana 2.3 25
3 watermelon 4.2 16

1、直接使用行或者列标签

假如我们要选取df的Fruits和Price两列,则

df[['Fruits','Price']]
Fruits Price
0 apple 1.2
1 pear 1.4
2 banana 2.3
3 watermelon 4.2

假如我们要选取df的第2、3行,则

df[2:4]
Fruits Price Sales
2 banana 2.3 25
3 watermelon 4.2 16

2、loc函数

loc函数是基于行标签和列标签进行索引的,其基本用法为:

DataFrame.loc[行标签,列标签]

假如我们要选取df的第2、3行和Price、Sales对应的列,则

df[2:3,'Price':'Sales']
Price Sales
2 2.3 25
3 4.2 16

假如我们要选取所有的行和Fruits、Sales对应的列,则

df.loc[:,['Fruits','Sales']]
Fruits Sales
0 apple 11
1 pear 45
2 banana 25
3 watermelon 16

3、iloc函数

iloc函数是基于行和列的位置进行索引的,索引值从0开始,并且得到的结果不包括最后一个位置的值,其基本用法为:

DataFrame.iloc[行位置,列位置]

假如我们要选取df的第2、3行和第1、2列,则

df.iloc[2:4,1:3]
Price Sales
2 2.3 25
3 4.2 16

假如我们要选取所有的行和第0、2列,则

df.iloc[:,[0,2]]
Fruits Sales
0 apple 11
1 pear 45
2 banana 25
3 watermelon 16

总结

到此这篇关于python pandas中索引函数loc和iloc区别的文章就介绍到这了,更多相关pandas索引函数loc和iloc内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

最新评论