繁体   English   中英

pandas select 行,如果另一列中的值发生变化

[英]pandas select row if value in another column changs

假设我有一个遵循类似结构的大型数据集:

在此处输入图像描述

id 重复多次的地方。 我想 select 任何 id,其中 b 列中的值随所需的 output 发生变化,如下所示:

在此处输入图像描述

我怎样才能通过 pandas 实现这一目标?

目前还不完全清楚你在要求什么。 你说

我想 select b 列中的值发生变化的任何 id

但是“改变”了什么?

也许以下内容会有所帮助——它会向您显示每个 ID 的所有唯一 ColumnB 字符串

使用样本 df:

df = pd.DataFrame({'id':[1,1,1,2,2,2,2], 'colb':['a','a','b','c','d','c','c']})

我们使用groupbyunique

df.groupby('id')['colb'].unique().explode().to_frame()

output:


    colb
id  
1   a
1   b
2   c
2   d

所以对于 id=1 我们有 a 和 b 作为独特的短语,对于 id=2 我们有 c 和 d

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM