Pandas loc、iloc用法详解

Pandas中的loc和iloc都是用来选择数据的方法,主要作用是在DataFrame中根据行、列的标签或位置进行数据的选择和切片。

具体来说,loc通过标签选择数据,iloc通过位置选择数据。loc和iloc都可以使用切片和布尔索引,还支持多层索引和高级索引等操作。

下面详细介绍一下这两种方法的用法:

loc方法

loc方法是通过行标签和列标签来访问数据的。语法如下:

df.loc[row_label, col_label]

其中,row_label可以是单个标签、标签列表或切片,用于定位行;col_label也可以是单个标签、标签列表或切片,用于定位列。如果要选择所有行或所有列,可以使用“:”作为标签。

示例代码:

import pandas as pd

# 创建DataFrame
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]}, index=['a', 'b', 'c'])

# 通过单个标签访问数据
print(df.loc['a', 'A'])  # 输出 1

# 通过标签列表访问数据
print(df.loc[['a', 'b'], ['A', 'B']])  # 输出
#    A  B
# a  1  4
# b  2  5

# 通过切片访问数据
print(df.loc['a':'c', 'A':'B'])  # 输出
#    A  B
# a  1  4
# b  2  5
# c  3  6

# 选择所有行和所有列
print(df.loc[:, :])  # 输出
#    A  B  C
# a  1  4  7
# b  2  5  8
# c  3  6  9

iloc方法

iloc方法是通过行索引和列索引来访问数据的。语法如下:

df.iloc[row_index, col_index]

其中,row_index可以是单个索引、索引列表或切片,用于定位行;col_index也可以是单个索引、索引列表或切片,用于定位列。如果要选择所有行或所有列,可以使用“:”作为索引。

示例代码:

import pandas as pd

data = {'name': ['Alice', 'Bob', 'Charlie', 'David', 'Emily'],
        'age': [25, 30, 35, 40, 45],
        'score': [88, 92, 95, 70, 65]}

df = pd.DataFrame(data)

# 选择第2行
print(df.iloc[1])

# 选择第2到第4行,第1到第2列
print(df.iloc[1:4, 0:2])

# 选择多行,单列
print(df.iloc[[0, 2, 4], 0])

输出结果为:

name     Bob
age       30
score     92
Name: 1, dtype: object
      name  age
1      Bob   30
2  Charlie   35
3    David   40
0      Alice
2    Charlie
4      Emily
Name: name, dtype: object

需要注意的是,loc和iloc选择行和列的方式略有不同,loc是按照标签索引,而iloc是按照整数位置索引。另外,使用loc和iloc时可以省略行或列的位置或标签,例如df.loc[:, 'name']表示选择所有行的name列。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Pandas loc、iloc用法详解 - Python技术站

(5)
上一篇 2023年3月5日
下一篇 2023年3月5日

相关文章

  • Pandas使用的注意事项

    Pandas 基于 NumPy 构建,它遵循 NumPy 设定的一些规则。因此,当您在使用 Pandas 时,需要额外留意一些事项,避免出现一些不必要的错误。 索引 Pandas有两种主要的索引机制:整数和标签索引,需要非常注意索引的使用。 整数索引:通过整数索引进行访问数据,如果未指定索引,Pandas将默认生成一个整数索引,但当使用整数索引时,需要特别小…

    Pandas 2023年3月7日
    00
  • Pandas分类对象(Categorical)详解

    Pandas分类对象是什么? 在 Pandas 中,分类对象(Categorical)是一种特殊的数据类型,它表示有限且固定数量的可能值的数据。分类对象主要用于存储和处理重复值的数据,并且在某些情况下可以提高性能和减少内存使用。 Pandas 的分类对象具有以下特点: 类别是有限的,且固定不变的。例如,在一个具有“男”、“女”两种可能性的列中,类别是固定的。…

    Pandas 2023年3月6日
    00
  • 详解Pandas merge合并操作的4种方法

    pandas 中的 merge 函数可以将两个数据集按照指定的列进行合并,类似于 SQL 中的 join 操作。merge 函数有多种合并方式,包括 inner join、left join、right join 和 outer join 等。 下面我们就来详细介绍一下 merge 函数的使用方法。 数据准备 我们首先准备两个数据集,一个是包含员工基本信息的…

    Pandas 2023年3月5日
    00
  • Pandas最常用的设置数据显示格式的11种方法

    在用 Pandas 做数据分析的过程中,为了更好地呈现和展示数据,使数据更易读、易于理解,从而提高数据分析的效率和准确性,我们经常需要设置数据的显示格式。 通过设置数据显示格式,可以调整数据的小数位数、数值的对齐方式、列宽等参数,使得数据在表格中更美观、整洁,同时也更符合数据的实际含义。此外,设置数据显示格式还可以对数据进行格式化输出,如将数值格式化为货币、…

    Pandas 2023年3月5日
    00
  • Pandas库的下载和安装

    Python 官方标准发行版并没有自带 Pandas 库,因此需要另行安装。下面介绍在不同操作系统环境下,标准发行版安装 Pandas 的方法。 Windows系统安装 使用 pip 包管理器安装 Pandas,是最简单的一种安装方式。在 CMD 命令提示符界面行执行以下命令:pip install pandas Linux系统安装 对于不同的版本的 Lin…

    Pandas 2023年3月4日
    00
  • Pandas 执行类似SQL操作的4种方法

    Pandas是数据处理中不可或缺的工具之一,除了数据的读写、清洗、转换等基本操作,Pandas还支持一些类似SQL的操作,而这些操作对于熟悉SQL的用户来说,极大地方便了数据的操作和分析。 Pandas提供的SQL类操作主要包括以下几种方法: merge: 将两个DataFrame按照指定的列进行合并(类似于SQL中的join操作)。 groupby: 对D…

    Pandas 2023年3月7日
    00
  • Pandas 格式化日期时间

    当进行数据分析时,我们会遇到很多带有日期、时间格式的数据集,在处理这些数据集时,就需要对日期时间做统一的格式化处理。 比如“Wednesday, June 6, 2023”可以写成“6/6/23”,或“06-06-2023”。 在 Pandas 中,我们可以使用 pd.to_datetime() 函数将日期字符串或时间戳转换为 Pandas 的日期时间类型。…

    Pandas 2023年3月6日
    00
  • Pandas DataFrame结构对象的创建与访问方法

    Pandas DataFrame结构是什么? Pandas DataFrame 是一种二维、大小可变且表格型的数据结构,它可以存储许多类型的数据并提供多种数据操作功能。 DataFrame 既有行索引也有列索引,类似于一个电子表格或 SQL 表格,能够更加方便地处理数据。结构如下图: Pandas DataFrame 的作用主要有: 数据的读取和写入:可以通…

    2023年3月4日
    00
合作推广
合作推广
分享本页
返回顶部