Skip to main content
 首页 » 编程设计

python之有没有办法通过 Pandas 中两列的逻辑比较进行分组

2025年05月04日14sharpest

我有一个具有以下结构的数据框:

<class 'pandas.core.frame.DataFrame'> 
Int64Index: 1152 entries, 0 to 143 
Data columns: 
cuepos             1152  non-null values 
response           1152  non-null values 
soa                1152  non-null values 
targetpos          1152  non-null values 
testorientation    1152  non-null values 
dtypes: float64(3), int64(2) 

cuepos列和 targetpos列均包含 1 的整数值或 2 .

我想根据 cuepos 之间的一致性 对这些数据进行分组和 targetpos .换句话说,我想生成两组,一组用于 cuepos == targetpos 中的行。和另一组 cuepos != targetpos .

我似乎无法弄清楚我该怎么做。我查看了使用分组函数,但这些函数似乎只作用于单个列……还是我弄错了?有人可以指出我正确的方向吗?

提前致谢! 回复

请您参考如下方法:

请注意,如果您的目标是进行群计算,您可以做

df.groupby(df.col1 == df.col2).apply(f) 

结果将由 True/False 键控。