pandas 用 .loc[,]=value 筛选并原地赋值回原来的 DataFrame

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pandas 用 .loc[,]=value 筛选并原地赋值回原来的 DataFrame相关的知识,希望对你有一定的参考价值。

参考技术A

问题:
筛选出符合某些条件的行以后,对这些行里面的某一列进行数值修改时,如果直接使用 data[筛选条件][某一列] = 值 会出现错误,因为这是对切片拷贝进行操作。因此,需要使用 .loc[] 来解决筛选、并原地修改数值的问题。

把下列内容填入 Sublime Text 等编辑器,另存为 test.csv 文件。

查看读入的数据

得到

假设,我们需要筛选出所有的男性(sex=male),并将其 id 改为 100。

如果我们没有使用 .loc[] ,直接使用 [] 进行数据切片选择,并对其赋值,就会产生错误。

对其赋值

出现警告,称切片仅仅是拷贝,不能对其赋值,需要 .loc[row_indexer,col_indexer] = value 赋值

使用方法是

对 test.csv 操作:筛选出所有的男性(sex=male),并将其 id 改为 100。

结果:

Pandas经典用法:数据筛选之iloc和loc

Pandas 是一套用于 Python 的快速、高效的数据分析工具。它可以用于数据挖掘和数据分析,同时也提供数据清洗功能。本篇目录如下:

一、iloc

1.定义

iloc索引器用于按位置进行基于整数位置的索引或者选择。

2.语法

df.iloc [row selection, column selection]

3.代码示例

(1)导入数据

(2)选择单行或单列

(3)选择多行或多列

(4)注意

iloc选择一行时返回Series,选择多行返回DataFrame,通过传递列表可转为DataFrame。

二、loc

1.定义

loc按照标签或者索引、布尔值或者条件进行选择数据,这种选择数据的方法较为常用。

2.语法

df.loc [row selection, column selection]

3.代码示例

(1)使用loc进行基于标签或者基于索引的方法

1)首先设置索引

2)根据索引选择单行或单列

3)根据索引选择多行多列

(2)使用loc进行布尔值/逻辑索引

(3)更多loc选择数据示例

(4)使用loc在DataFrame中设置值

技术交流

欢迎转载、收藏、有所收获点赞支持一下!

目前开通了技术交流群,群友已超过2000人,添加时最好的备注方式为:来源+兴趣方向,方便找到志同道合的朋友

  • 方式①、发送如下图片至微信,长按识别,后台回复:加群;
  • 方式②、添加微信号:dkl88191,备注:来自CSDN
  • 方式③、微信搜索公众号:Python学习与数据挖掘,后台回复:加群

以上是关于pandas 用 .loc[,]=value 筛选并原地赋值回原来的 DataFrame的主要内容,如果未能解决你的问题,请参考以下文章

Pandas笔记 · DataFrame.loc()和DataFrame.iloc()

Pandas笔记 · DataFrame.loc()和DataFrame.iloc()

在pandas中使用query替代loc进行高效简洁的条件筛选

在pandas中使用query替代loc进行高效简洁的条件筛选

在pandas中使用query替代loc进行高效简洁的条件筛选

Pandas经典用法:数据筛选之iloc和loc