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技术站

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

相关文章

  • Pandas 执行类似SQL操作的4种方法

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

    Pandas 2023年3月7日
    00
  • Pandas Series对象常用的属性和方法

    Pandas Series对象是一维标签数组,主要用于存储不同数据类型的数据。 Series常用属性 下面我们介绍 Series 的常用属性和方法。在下表列出了 Series 对象的常用属性。 名称 属性 index 返回一个Index对象,代表Series的索引。 values 返回一个numpy数组,代表Series的值。 dtype 返回Series中…

    Pandas 2023年3月4日
    00
  • 详解Pandas concat连接操作的5种使用方法

    Pandas中的concat函数可以将多个数据框(DataFrame)按照一定的方式拼接在一起,这个函数的使用非常广泛,可以用来进行数据的横向和纵向拼接操作。本文将详细介绍concat函数的用法及注意事项。 concat函数基本用法 concat函数的基本用法如下: pd.concat(objs, axis=0, join=’outer’, ignore_i…

    Pandas 2023年3月6日
    00
  • 详解pandas最常用的3种去重方法

    删除重复数据是数据分析中经常会遇到的一个问题。通过数据去重,不仅可以节省内存空间,提高写入性能,还可以提升数据集的精确度,使得数据集不受重复数据的影响。 在 Pandas 中,可以使用 drop_duplicates() 方法来删除 DataFrame 中的重复行。该方法默认删除所有列值都相同的行,也可以指定列进行去重。 下面是一些常用的去重方法: drop…

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

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

    2023年3月4日
    00
  • Pandas设置索引、重置索引方法详解

    在pandas中,索引可以看做是数据的“标签”,用于标识数据表中每个数据的位置。pandas提供了设置索引和重置索引的功能,以方便用户对数据进行排序、筛选等操作。 首先,通过以下代码创建一个示例DataFrame: import pandas as pd data = {'name': ['Alice', '…

    Pandas 2023年3月7日
    00
  • Pandas对象使用自定义函数的3个方法!

    Pandas为什么要使用自定义函数? 使用自定义函数可以让我们更灵活地对数据进行处理和分析。在某些情况下,内置的函数可能无法满足我们的需求,例如需要进行特定的数据清洗、转换或计算。这时候,我们可以编写自己的函数来处理数据。同时,自定义函数也可以让我们更好地复用代码,提高开发效率。 接下来我们将详细介绍Pandas使用自定义函数的4种方法。 Pandas使用自…

    Pandas 2023年3月4日
    00
  • Pandas最常用的5种聚合函数

    Pandas聚合函数(Aggregation Function)是一种数据处理函数,用于对数据进行汇总、统计和分析。在数据分析中,常常需要对数据进行聚合计算,如计算平均值、总和、标准差、方差等。Pandas提供了多种聚合函数,可以方便地对数据进行统计和分析。 Pandas聚合函数可以应用于Series和DataFrame对象,可以对整个序列或数据框进行聚合,…

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