Pandas之三选择数据

简介: 介绍在pandas中筛选数据的几种方法,快速定位某行、某列、具体元素的方法

前文介绍了如何查看dataframe数据,现在再来看看怎么样定位和修改pandas的具体数据。

官方推荐选择数据的方法为.at, .iat, .loc, .iloc,这些方法可以指定行列的信息进行数据筛选。具体功能说明如下:

  • at:根据标签(label)定位具体元素
  • iat:根据位置定位具体元素
  • loc:根据标签截取Series、dataframe或具体元素
  • iloc:根据位置截取Series、dataframe或具体元素

配合起来可以在dataframe里面使用多种方式选择数据:

  1. 按数据列选择数据
  2. 使用列表[]方式选择数据
  3. 按标签选择数据
  4. 按位置选择数据
  5. 按条件筛选数据
  6. 以新值更新选择的数据

下面我们依然使用前文生成的df对象来演示各种方法

df = pd.DataFrame(np.random.randn(6, 4), 
                  index=dates, 
                  columns=list("ABCD"))

df

按列选择数据

可以使用df.A方式选择A列数据,该方式等同于df["A"]
在这里插入图片描述

也可以通过df[["A","B"]]方式选择多个列
在这里插入图片描述

列表[]方式选择数据

该方法是截取dataframe中的某些行

  1. 选择所有数据

在这里插入图片描述

  1. 通过索引位置选择某几行,该方法按照左闭右开方式截取数据
    在这里插入图片描述
  2. 选择某范围内的几行数据,该方法按照左闭右闭方式截取数据,类似于SQL语法中的between .. and ..

在这里插入图片描述

注:官方并不推荐使用以上这种方式做数据选择,推荐选择数据的方法为.at, .iat, .loc, .iloc

按标签选择数据

  1. 可以根据index值选择某行数据

在这里插入图片描述

  1. 可以根据用index的范围选择多行数据

在这里插入图片描述

  1. 在选择数据时,可以配合列名进一步选择数据

在这里插入图片描述

  1. 通过index和列名定位到某个cell具体的值(前文的方式获取到依然dataframe,而此处获取到的是标量数据),同时支持.loc.at方式。要注意的是:

    • .at不支持类型隐式转换,而.loc是支持的
    • .at的速度比.loc要快

在这里插入图片描述

按位置选择数据

通过位置选择数据的时候,既可以选择一行一列、一行多列、多行一列、多行多列也可以选择具体元素,在label不明确的时候,可以通过位置进行选择。最典型的场景就是选择首行、尾行等。

  1. 选择第n行数据,只输入一个参数时,默认为行。

在这里插入图片描述

  1. 选择第n行,某几列数据,同时输入行列数据时,使用逗号,间隔。在范围选择时,其按照左闭右开方式截取数据。

在这里插入图片描述

  1. 选择某几行,某列数据

在这里插入图片描述

  1. 选择某几行,某几列数据

在这里插入图片描述

  1. 选择所有行,某些列数据

在这里插入图片描述

  1. 选择具体元素

在这里插入图片描述

按条件选择数据

在pandas中也可以使用条件进行数据过滤,就像使用where条件一样。

  1. 根据某列值进行筛选,如图选择B>1的数据

在这里插入图片描述

  1. 对整个dataframe进行筛选,选择值>0的数据

在这里插入图片描述

  1. 使用isin()做数据筛选,类似sql中的in

在这里插入图片描述

更新数据

选择完数据之后,可以使用长度相同的数据的进行更新

  1. 将2021-09-01的A列数据更新为0

在这里插入图片描述

  1. 将D列使用numpy.array替代,此列是以len(df)[7]来替代

在这里插入图片描述


欢迎关注微信公众号:数据研发技术,会分享各类数据研发相关的技术

目录
相关文章
|
1月前
|
Python
使用 Pandas 库时,如何处理数据的重复值?
在使用Pandas处理数据重复值时,需要根据具体的数据特点和分析需求,选择合适的方法来确保数据的准确性和唯一性。
119 8
|
2天前
|
存储 数据挖掘 数据处理
Pandas 数据筛选:条件过滤
Pandas 是 Python 最常用的数据分析库之一,提供了强大的数据结构和工具。本文从基础到高级,介绍如何使用 Pandas 进行条件过滤,包括单一条件、多个条件过滤、常见问题及解决方案,以及动态和复杂条件过滤的高级用法。希望本文能帮助你更好地利用 Pandas 处理数据。
104 78
|
4天前
|
数据挖掘 索引 Python
Pandas数据读取:CSV文件
Pandas 是 Python 中强大的数据分析库,`read_csv` 函数用于从 CSV 文件中读取数据。本文介绍 `read_csv` 的基本用法、常见问题及其解决方案,并通过代码案例详细说明。涵盖导入库、读取文件、指定列名和分隔符、处理文件路径错误、编码问题、大文件读取、数据类型问题、日期时间解析、空值处理、跳过行、指定索引列等。高级用法包括自定义列名映射、处理多行标题和注释行。希望本文能帮助你更高效地使用 Pandas 进行数据读取和处理。
37 13
|
1天前
|
算法 数据挖掘 索引
Pandas数据排序:单列与多列排序详解
本文介绍了Pandas库中单列和多列排序的方法及常见问题的解决方案。单列排序使用`sort_values()`方法,支持升序和降序排列,并解决了忽略大小写、处理缺失值和索引混乱等问题。多列排序同样使用`sort_values()`,可指定不同列的不同排序方向,解决列名错误和性能优化等问题。掌握这些技巧能提高数据分析效率。
21 9
|
1月前
|
Python
|
1月前
|
Python
|
1月前
|
Python
Pandas 常用函数-数据合并
Pandas 常用函数-数据合并
40 1
|
1月前
|
索引 Python
Pandas 常用函数-数据排序
10月更文挑战第28天
17 1
|
1月前
|
Python
Pandas 常用函数-查看数据
Pandas 常用函数-查看数据
21 2
|
1月前
|
SQL JSON 数据库
Pandas 常用函数-读取数据
Pandas 常用函数-读取数据
19 2
下一篇
DataWorks