浅谈pandas中Dataframe的查询方法([], loc, iloc, at, iat, ix)

yizhihongxing

接下来我将详细讲解一下 pandas 中 DataFrame 的查询方法,包括 []、loc、iloc、at、iat、ix 这几种方法。

DataFrame 查询方法

DataFrame 的基本查询方法——[]

DataFrame 的基本查询方法是使用中括号 [] 进行索引,这种方法是最为简单的方法。

示例 1:

import pandas as pd

data = {'name': ['Amy', 'Bob', 'Carson', 'David'],
        'age': [20, 21, 22, 23],
        'gender': ['female', 'male', 'male', 'male']}
df = pd.DataFrame(data)

# 查询 name 列
print(df['name'])

输出结果:

0       Amy
1       Bob
2    Carson
3     David
Name: name, dtype: object

示例 2:

import pandas as pd

data = {'name': ['Amy', 'Bob', 'Carson', 'David'],
        'age': [20, 21, 22, 23],
        'gender': ['female', 'male', 'male', 'male']}
df = pd.DataFrame(data)

# 查询 name 和 age 列
print(df[['name', 'age']])

输出结果:

     name  age
0     Amy   20
1     Bob   21
2  Carson   22
3   David   23

loc

loc 是根据 DataFrame 的行列标签进行查询的方法,可通过行列标签直接定位到具体的数据。

示例 1:

import pandas as pd

data = {'name': ['Amy', 'Bob', 'Carson', 'David'],
        'age': [20, 21, 22, 23],
        'gender': ['female', 'male', 'male', 'male']}
df = pd.DataFrame(data, index=['a', 'b', 'c', 'd'])

# 查询行标签为 b、d,列标签为 name、age 的数据
print(df.loc[['b', 'd'], ['name', 'age']])

输出结果:

    name  age
b    Bob   21
d  David   23

示例 2:

import pandas as pd

data = {'name': ['Amy', 'Bob', 'Carson', 'David'],
        'age': [20, 21, 22, 23],
        'gender': ['female', 'male', 'male', 'male']}
df = pd.DataFrame(data, index=['a', 'b', 'c', 'd'])

# 查询行标签为 b 的行的所有数据
print(df.loc['b'])

输出结果:

name         Bob
age           21
gender      male
Name: b, dtype: object

iloc

iloc 是根据 DataFrame 的行列位置进行查询的方法,它与 loc 不同,它用的是行列位置。

示例 1:

import pandas as pd

data = {'name': ['Amy', 'Bob', 'Carson', 'David'],
        'age': [20, 21, 22, 23],
        'gender': ['female', 'male', 'male', 'male']}
df = pd.DataFrame(data)

# 查询第二行第一列的数据
print(df.iloc[1, 0])

输出结果:

Bob

示例 2:

import pandas as pd

data = {'name': ['Amy', 'Bob', 'Carson', 'David'],
        'age': [20, 21, 22, 23],
        'gender': ['female', 'male', 'male', 'male']}
df = pd.DataFrame(data)

# 查询前两行,所有列的数据
print(df.iloc[:2, :])

输出结果:

  name  age  gender
0   Amy   20  female
1   Bob   21    male

at 和 iat

at 和 iat 是用于查询单个元素的方法,它们与 loc 和 iloc 类似,只不过 at 和 iat 只能查询单个元素,速度比 loc 和 iloc 快。

示例 1:

import pandas as pd

data = {'name': ['Amy', 'Bob', 'Carson', 'David'],
        'age': [20, 21, 22, 23],
        'gender': ['female', 'male', 'male', 'male']}
df = pd.DataFrame(data)

# 查询第二行第一列的数据
print(df.iat[1, 0])

输出结果:

Bob

示例 2:

import pandas as pd

data = {'name': ['Amy', 'Bob', 'Carson', 'David'],
        'age': [20, 21, 22, 23],
        'gender': ['female', 'male', 'male', 'male']}
df = pd.DataFrame(data)

# 查询第二行第一列的数据
print(df.at[1, 'name'])

输出结果:

Bob

ix(已废弃)

ix 通过标签值或者位置来查询表格。但是,它已经被废弃,不推荐使用。

总结

至此,pandas 中 DataFrame 的查询方法已经全部介绍完毕,分别包括 []、loc、iloc、at、iat、ix 几种方法。我们可以根据实际需求来选择不同的查询方法,从而有效地提高查询效率,加快数据处理速度。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:浅谈pandas中Dataframe的查询方法([], loc, iloc, at, iat, ix) - Python技术站

(0)
上一篇 2023年5月14日
下一篇 2023年5月14日

相关文章

  • pandas 时间偏移的实现

    Pandas时间偏移的实现 什么是时间偏移? 时间偏移(Timedelta)是Pandas的一种数据类型,用于表示时间间隔或时间差。在Pandas中,时间偏移是由两个日期或时间点之间的时间差表示的。 时间偏移的创建 在Pandas中,可以通过字符串来创建时间偏移。例如,以下代码创建了一个持续1天的时间偏移: import pandas as pd offse…

    python 2023年5月14日
    00
  • pycharm使用matplotlib.pyplot不显示图形的解决方法

    针对“pycharm使用matplotlib.pyplot不显示图形的解决方法”,我可以提供以下完整攻略: 一、问题描述 在使用matplotlib.pyplot时,有时候会出现图形无法显示的情况。具体表现为程序运行时没有弹出窗口显示图形,或者弹出的窗口中没有图像。 二、解决方法 1.更改pyplot的后端(backend) matplotlib的后端指的是…

    python 2023年5月14日
    00
  • 在Python Pandas中从时间戳中获取秒数

    获取时间戳中的秒数可以使用Python中的Pandas模块。下面将详细讲解如何在Pandas中获取时间戳的秒数。 步骤1:导入模块 首先,需要导入pandas模块。在Python中通常使用以下命令导入: import pandas as pd 步骤2:创建时间戳 接下来,需要创建一个时间戳,可以使用Pandas中的“Timestamp”方法,例如: time…

    python-answer 2023年3月27日
    00
  • 如何使用Python中的Pandas获得巨大数据集的笛卡尔乘积

    要使用Pandas获得巨大数据集的笛卡尔乘积,首先你需要了解一些概念和方法:Pandas,笛卡尔积,以及Pandas Dataframe和Series。 Pandas是一个Python的数据分析和数据处理库,它可以让你轻松地处理和分析大型数据集。 笛卡尔积是指两个集合之间的所有可能的元素对组成的新集合。 Pandas Dataframe是一个具有行列索引的二…

    python-answer 2023年3月27日
    00
  • Python pandas DataFrame操作的实现代码

    Python pandas DataFrame 操作的实现代码攻略 为了进行Python pandas DataFrame操作,首先需要导入pandas模块。常用的pandas模块操作有以下几种: 创建DataFrame:在pandas模块中,可以通过list、dict和CSV文件创建DataFrame。 读取CSV文件并创建DataFrame:pandas…

    python 2023年5月14日
    00
  • 使用Pandas对数据进行筛选和排序的实现

    下面我来为您详细讲解使用Pandas对数据进行筛选和排序的实现的完整攻略。 一、筛选数据 Pandas提供了多种方式对DataFrame数据进行筛选,以下是其中几种常用方法: 1. loc方法 loc方法通过行或列的标签(Label)进行选择,可以使用逗号(‘,’)隔开,前面部分为行标签,后面部分为列标签。 示例: import pandas as pd d…

    python 2023年5月14日
    00
  • python实现将两个文件夹合并至另一个文件夹(制作数据集)

    我会详细讲解如何通过Python实现将两个文件夹合并至另一个文件夹来制作数据集。下面是完整攻略: 准备工作 确保你的电脑上已经安装好Python环境 创建三个文件夹:folder1、folder2、merged_folder,并将需要合并的文件放置在folder1和folder2中。 实现过程 首先,我们需要导入os模块。该模块提供了访问文件系统的接口,我们…

    python 2023年6月13日
    00
  • 在Pandas DataFrame中把一个文本列分成两列

    在Pandas DataFrame中把一个文本列分成两列,可以使用str.split()方法,将文本根据指定的分隔符进行分割。接下来,通过以下步骤来详细讲解: 步骤一:导入相关库 import pandas as pd 步骤二:创建DataFrame数据 data = { ‘text’: [ ‘John Smith, 25, Male’, ‘Jane Doe…

    python-answer 2023年3月27日
    00
合作推广
合作推广
分享本页
返回顶部