gpt4 book ai didi

python - 在groupby Python后查找配对记录

转载 作者:行者123 更新时间:2023-12-03 14:37:35 24 4
gpt4 key购买 nike

我有一个这样的数据框:

df = pd.DataFrame(
[['101', 'a', 'in', '10'],
['101', 'a', 'out', '10'],
['102', 'b', 'in', '20'],
['103', 'c', 'in', '30'],
['103', 'c', 'out', '40']],
columns=['col1', 'col2', 'col3', 'col4']
)

我想按 col1 分组并找到在 col2 和 col4 中具有相同值的成对记录,但是一个在 col3 中有 'in' 一个在 col3 中有 'out'。预期的结果是:
df_out = pd.DataFrame(
[['101', 'a', 'in', '10'],
['101', 'a', 'out', '10']],
columns=['col1', 'col2', 'col3', 'col4']
)
感谢您的帮助。

最佳答案

让我们试试 transformnunique

out = df[df.groupby(['col1','col2','col4'])['col3'].transform('nunique')==2]
Out[187]:
col1 col2 col3 col4
0 101 a in 10
1 101 a out 10

关于python - 在groupby Python后查找配对记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63779711/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com