Python 在表中查找值并更改所有重复项的值
我有一个这样的数据帧Python 在表中查找值并更改所有重复项的值,python,pandas,Python,Pandas,我有一个这样的数据帧 Subject Special Mutated dog Y N dog Y N dog N Y dog N Y cat Y N cat N Y cat N Y bird N Y bird N Y Subject Special Mutated dog Y
Subject Special Mutated
dog Y N
dog Y N
dog N Y
dog N Y
cat Y N
cat N Y
cat N Y
bird N Y
bird N Y
Subject Special Mutated
dog Y N
dog Y N
dog Y Y
dog Y Y
cat Y N
cat Y Y
cat Y Y
bird N Y
bird N Y
我想检查主题
中的一个是否在特殊
行中具有值Y
。如果是,所有副本都应获得值Y
输出应该如下所示
Subject Special Mutated
dog Y N
dog Y N
dog N Y
dog N Y
cat Y N
cat N Y
cat N Y
bird N Y
bird N Y
Subject Special Mutated
dog Y N
dog Y N
dog Y Y
dog Y Y
cat Y N
cat Y Y
cat Y Y
bird N Y
bird N Y
到目前为止,我没有一个好的方法-你们有什么想法吗?让我们试试
transform
df['Special'] = df.groupby(['Subject'])['Special'].transform('max')
Out[316]:
0 Y
1 Y
2 Y
3 Y
4 Y
5 Y
6 Y
7 N
8 N
Name: Special, dtype: object
为什么有效
'Y'>'N'
Out[317]: True