Python 基于相似列值对数据帧进行分组

Python 基于相似列值对数据帧进行分组,python,dataframe,Python,Dataframe,这是我想要的- OFFENSE_ID RULE_ID STATUS 100 1 open 101 2 closed 102 2 open 103 1 open 104 2 closed 105 2 open 提前感谢您的帮助 试试看 RU

这是我想要的-

OFFENSE_ID    RULE_ID    STATUS  
       100          1      open
       101          2    closed
       102          2      open
       103          1      open
       104          2    closed
       105          2      open
提前感谢您的帮助

试试看

RULE_ID   OPEN   CLOSED
      1      2        0
      2      2        2

下面的代码生成所需的输出。如果您可以提供必要的脚本来模拟您的场景,那么其他人就可以轻松地进行工作

dfinal = df1.merge(df2, how='inner', left_on='RULE_ID', right_on='RULE_ID')
输出:


你试过什么?记住“如何提出一个好问题:”你可能想做点什么
df=pd.DataFrame([[100,1,"open"],[101,2,"closed"],[102,2,"open"],[103,1,"open"],[104,2,"closed"],[105,2,"open"]],columns=["OFFENSE_ID","RULE_ID","STATUS"])
df["OPEN"]=df[df["STATUS"]=="open"]["STATUS"]
df["CLOSED"]=df[df["STATUS"]=="closed"]["STATUS"]
dfGroup=df.groupby(by=["RULE_ID"],as_index=False).agg({"OPEN":"count","CLOSED":"count"})