Python 选择并更新熊猫中的特定行

Python 选择并更新熊猫中的特定行,python,pandas,Python,Pandas,假设我有一个DF: DF: Inp | M | N | P GF | 1 | 12 | GF | 1 | 12 | GF | 1 | 13 | 我想在Inp=GF和M=1和N=12的任何行中放置一个值,以获得如下输出: DF2: Inp | M | N | P GF | 1 | 12 | X GF | 1 | 12 | X GF | 1 | 13 | df.loc[(DF['Inp'] = 'GF') & (DF['M'] = 1) & (DF['N'

假设我有一个DF:

DF:
Inp | M |  N | P 
 GF | 1 | 12 |
 GF | 1 | 12 |
 GF | 1 | 13 | 
我想在
Inp
=
GF
M
=1和
N
=12的任何行中放置一个值,以获得如下输出:

DF2:
Inp | M |  N | P 
 GF | 1 | 12 | X
 GF | 1 | 12 | X
 GF | 1 | 13 | 
df.loc[(DF['Inp'] = 'GF') & (DF['M'] = 1) & (DF['N'] = 12)]
我知道我可以通过使用
.loc
这样的多个属性进行选择:

DF2:
Inp | M |  N | P 
 GF | 1 | 12 | X
 GF | 1 | 12 | X
 GF | 1 | 13 | 
df.loc[(DF['Inp'] = 'GF') & (DF['M'] = 1) & (DF['N'] = 12)]

但是我不知道如何在p列中放置一个值。也许我没有走上正确的轨道

我想你的思路是对的。只需添加列并指定您的值:

df.loc[(DF['Inp'] = 'GF') & (DF['M'] = 1) & (DF['N'] = 12), "P"] = X

我想你是在正确的轨道上。只需添加列并指定您的值:

df.loc[(DF['Inp'] = 'GF') & (DF['M'] = 1) & (DF['N'] = 12), "P"] = X

参见副本中的piR解决方案,特别是第3点。布尔数组正是这种类型的选择参见重复中的piR解决方案,特别是第3点。布尔数组就是这种选择