一文秒懂pandas中iloc()函数

 更新时间:2024年07月26日 09:56:47   作者:sci_more  
iloc[]函数属于pandas库全称为index location,即对数据进行位置索引,从而在数据表中提取出相应的数据,本文通过实例代码介绍pandas中iloc()函数,感兴趣的朋友一起看看吧

pandas中iloc()函数

DataFrame.iloc
纯基于整数位置的索引。

import pandas as pd
mydict = [{'a': 1, 'b': 2, 'c': 3, 'd': 4},
           {'a': 100, 'b': 200, 'c': 300, 'd': 400},
           {'a': 1000, 'b': 2000, 'c': 3000, 'd': 4000 }]
'''mydict
[{'a': 1, 'b': 2, 'c': 3, 'd': 4},
 {'a': 100, 'b': 200, 'c': 300, 'd': 400},
 {'a': 1000, 'b': 2000, 'c': 3000, 'd': 4000}]'''
df = pd.DataFrame(mydict)
'''
df
	a	b	c	d
0	1	2	3	4
1	100	200	300	400
2	1000	2000	3000	4000
'''

在这里æ'å¥å›¾ç‰‡æè¿°

df.iloc[0]#取第0行
a    1
b    2
c    3
d    4
Name: 0, dtype: int64
df.iloc[0].shape
(4,)
type(df.iloc[0].shape)
tuple
df.iloc[[0]]
	a	b	c	d
0	1	2	3	4
type(df.iloc[[0]])
pandas.core.frame.DataFrame
df.iloc[[0,2]]#取第0、2行
	   a	   b	   c	   d
0	   1	   2	   3	   4
2	1000	2000	3000	4000
df.iloc[0:2,0:3]#取0到1行和0到2列
	  a	  b   c
0	  1	  2	  3
1	100	200	300
df.iloc[[True, False, True]]#不常用
	   a	   b	   c	   d
0	   1	   2	   3	   4
2	1000	2000	3000	4000
df.iloc[lambda x: x.index % 2 == 0]#函数生成索引列表,x即df
       a	   b	   c	   d
0	   1	   2	   3	   4
2	1000	2000	3000	4000

Pandas库中iloc[ ]函数使用详解

1 iloc[]函数作用

iloc[]函数,属于pandas库,全称为index location,即对数据进行位置索引,从而在数据表中提取出相应的数据。

2 iloc函数使用

df.iloc[a,b],其中df是DataFrame数据结构的数据(表1就是df),a是行索引(见表1),b是列索引(见表1)。

姓名(列索引10)班级(列索引1)分数(列索引2)
0(行索引0)小明30287
1(行索引1)小王30395
2(行索引2)小方303100

1.iloc[a,b]:取行索引为a列索引为b的数据。

import pandas
df = pandas.read_csv('a.csv')
print(df.iloc[1,2])
#Out:95

2.iloc[a:b,c]:取行索引从a到b-1,列索引为c的数据。注意:在iloc中a:b是左到右不到的,即lioc[1:3,:]是从行索引从1到2,所有列索引的数据。

import pandas
df = pandas.read_csv('a.csv')
print(df.iloc[0:2,2]) #数据结构是Series
print(df.iloc[0:2,2].values) #数据结构是ndarray
#Out1:0    87
#      1    95
# Name: 分数, dtype: int64
#Out2:[87 95]

iloc[].values,用values属性取值,返回ndarray,但是单个数值无法用values函数读取。 

 3.iloc[a:b,c:d]:取行索引从a到b-1,列索引从c到d-1的数据。

import pandas
df = pandas.read_csv('a.csv')
print(df.iloc[0:2,0:2])
print(df.iloc[0:2,0:2].values)
#Out1:   姓名   班级
#      0  小明  302
#      1  小王  303
#Out2:[['小明' 302]
#       ['小王' 303]]

4.iloc[a]:取取行索引为a,所有列索引的数据。

import pandas
df = pandas.read_csv('a.csv')
print(df.iloc[2])
print(df.iloc[2].values)
#Out1:姓名     小方
#      班级    303
#      分数    100
# Name: 2, dtype: object
#Out2:['小方' 303 100]

补充:pandas的iloc函数

pandas的iloc函数:

iloc 是 Pandas 中用于基于整数位置进行索引和切片的方法。它允许你通过整数位置来访问 DataFrame 中的特定行和列。

语法格式如下:

DataFrame.iloc[row_indexer, column_indexer]
  • row_indexer: 行的整数位置或切片。
  • column_indexer: 列的整数位置或切片。

下面是一些使用 iloc 的示例:

import pandas as pd
# 创建一个示例 DataFrame
data = {'Name': ['Alice', 'Bob', 'Charlie', 'David'],
        'Age': [25, 30, 35, 40],
        'City': ['New York', 'San Francisco', 'Los Angeles', 'Chicago']}
df = pd.DataFrame(data)
# 使用 iloc 获取特定行和列的数据
# 获取第二行(索引为1)的所有列数据
row_1 = df.iloc[1, :]
# 获取第一列(索引为0)的所有行数据
column_0 = df.iloc[:, 0]
# 获取第二行到第四行(索引为1到3)的第一列和第二列的数据
subset = df.iloc[1:4, 0:2]
print("Row 1:")
print(row_1)
print("\nColumn 0:")
print(column_0)
print("\nSubset:")
print(subset)

在这个例子中,iloc 被用于获取指定的行和列。要注意,iloc 使用的是整数位置,而不是标签。索引从0开始。这使得 iloc 适用于对 DataFrame 进行基于位置的切片和索引。

Row 1:
Name              Bob
Age                30
City    San Francisco
Name: 1, dtype: object
Column 0:
0      Alice
1        Bob
2    Charlie
3      David
Name: Name, dtype: object
Subset:
      Name  Age
1      Bob   30
2  Charlie   35
3    David   40

到此这篇关于Pandas库中iloc[ ]函数使用详解的文章就介绍到这了,更多相关Pandas iloc[ ]函数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python使用到第三方库PyMuPDF图片与pdf相互转换

    Python使用到第三方库PyMuPDF图片与pdf相互转换

    今天为大家介绍个比较简单的Python第三方库PyMuPDF进行图片和pdf之间的相互转换,以下就是利用PyMuPDF进行pdf与图片之间的互转
    2019-05-05
  • Python利用Rows快速操作csv文件

    Python利用Rows快速操作csv文件

    Rows 是一个专门用于操作表格的第三方Python模块。只要通过 Rows 读取 csv 文件,她就能生成可以被计算的 Python 对象。本文将通过示例为大家详细讲讲Python如何利用Rows快速操作csv文件,需要的可以参考一下
    2022-09-09
  • pygame学习笔记(3):运动速率、时间、事件、文字

    pygame学习笔记(3):运动速率、时间、事件、文字

    这篇文章主要介绍了pygame学习笔记(3):运动速率、时间、事件、文字,本文讲解了运动速率、事件、字体及字符显示等内容,需要的朋友可以参考下
    2015-04-04
  • 用Python PIL实现几个简单的图片特效

    用Python PIL实现几个简单的图片特效

    这篇文章主要介绍了用Python PIL实现几个简单的图片特效,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-01-01
  • python中的np.round()函数示例详解

    python中的np.round()函数示例详解

    np.round()是NumPy库中的一个函数,用于对数组或单个数值进行四舍五入,该函数返回一个与输入类型相同的数组或数值,并可以通过可选的参数来指定保留的小数位数,这篇文章主要介绍了python中的np.round()函数,需要的朋友可以参考下
    2024-06-06
  • python从zip中删除指定后缀文件(推荐)

    python从zip中删除指定后缀文件(推荐)

    这篇文章给大家介绍了python从zip中删除指定后缀文件,然后再自动压缩,本文给大家提供了源码参考,感兴趣的朋友跟随小编一起看看吧
    2019-12-12
  • pycharm debug 断点调试心得分享

    pycharm debug 断点调试心得分享

    这篇文章主要介绍了pycharm debug 断点调试心得分享,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • 在Windows中设置Python环境变量的实例讲解

    在Windows中设置Python环境变量的实例讲解

    下面小编就为大家分享一篇在Windows中设置Python环境变量的实例讲解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04
  • Python二次规划和线性规划使用实例

    Python二次规划和线性规划使用实例

    这篇文章主要介绍了Python二次规划和线性规划使用实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • 基于Python利用Faker批量测试数据

    基于Python利用Faker批量测试数据

    这篇文章主要介绍了基于Python利用Faker批量测试数据。测试过程中,经常需要批量去造数据,方法有很多,最简单方便的应该是使用python 的一个三方库Faker。下面我们就来看看三方库Faker如何批量测试数据,需要的朋友可以参考一下
    2022-03-03

最新评论