熊猫:在没有收到警告的情况下更改通过布尔索引在列中选择的值

赫里斯

我有一个数据框,我只想更改另一列满足特定条件的列的那些值。目前,我正在尝试执行此操作,iloc但它不起作用或收到了令人讨厌的警告:

试图在DataFrame的切片副本上设置一个值

例:

import pandas as pd
DF = pd.DataFrame({'A':[1,1,2,1,2,2,1,2,1],'B':['a','a','b','c','x','t','i','x','b']})

做其中之一

DF['B'].iloc[:][DF['A'] == 1] = 'X'

DF.iloc[:]['B'][DF['A'] == 1] = 'Y'

可行,但会导致上述警告。

这也发出警告,但不起作用:

DF.iloc[:][DF['A'] == 1]['B'] = 'Z'

我真的对如何使用locilocix正确的布尔索引感到困惑,即如何以正确的顺序和正确的语法提供行索引,列索引和AND布尔索引。

有人可以帮我清理一下吗?

海盗

您正在链接自己的选择器,从而引发警告。将选择合并为一个。
使用loc替代

DF.loc[DF['A'] == 1, 'B'] = 'X'
DF

在此处输入图片说明

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

SQL-如何在没有多个子选择的情况下比较更改的列值

在没有警告的情况下更新熊猫数据框中的列

如何在没有列名或行名的情况下选择熊猫中的列和行?

如何在没有跳转行的情况下通过复制选择表格中的值

在没有警告的情况下替换和填充列

如何在没有索引值的情况下遍历?

在没有密钥名称的情况下更改json值

如何从行中选择一个值并在没有循环的情况下更新另一行?

从基于服务的数据库中选择没有在 DataGridView (WinFormsApp VB .Net Framework) 中选择的情况下找不到任何值

在没有(...,)熊猫python的情况下在每个行中获取具有最大值的列的索引

如何在不影响数据的情况下更改熊猫的索引值

有没有办法在不首先通过查询检索值的情况下将 1 与列值相加?

如何在没有循环的情况下通过列名和索引列表向数据框的列添加值

如何在没有ID的情况下通过getElementByClassName或querySelector在javascript中设置选择值dropdownlist

在没有OrderBy的情况下从Entity Framework数据库中选择随机记录

在没有连接的情况下从 SQL 中的多个表中选择

在没有elasticsearch-py的情况下将熊猫数据框索引到Elasticsearch

在没有真实索引的情况下重塑熊猫数据框

在没有索引的情况下更新文件中的熊猫特定行

在没有索引的情况下更新文件中的熊猫特定行

在没有索引的情况下更新文件中的熊猫特定行

在没有If语句的情况下将Java中的布尔值转换为整数

如何在没有任何查询的情况下更改SQL上的SSMS警告设置?

在没有UI的情况下更改选择后,TreeView多项选择无法正常工作

在没有 for 循环的情况下更改特定索引处的大型数组中的条目

如何看待前一行回值选择情况下,只有在熊猫

熊猫:在没有行的情况下添加零值(稀疏)

在没有地图的情况下替换熊猫数据框中多个值的优雅方法?

在没有VBA的情况下在excel中选择和传输列