按多个标准对信息进行分组?
Grouping information by multiple criteria?
所以我有一个类似于下面的数据框,其中 stamp 是日期时间索引;
对于上下文,它代表收到的订单,我的目标是匹配可能相同但作为两个单独订单出现的订单。
Stamp
Price.
indicator
EX
qty
1234
10
1
d
12
2345
30
-1
d
13
我想将具有相同日期时间戳的条目分组,因为这些条目具有相同的 EX 和指标。
我想我知道如何只用图章来做到这一点,但是我不确定如何将 EX 和指标的条件添加到 groupby。
这里是初学者,非常感谢任何帮助!
试试这个:
df.groupby(["Stamp", "EX", "indicator"])
如果您想要获得数量和价格的总和,您可以这样做:
df.groupby(["Stamp", "EX", "indicator"]).sum()
您可以对多个列进行分组:df.groupby(['Stamp', 'EX'])
然后你可以检查每组的长度,看看是否有多个行共享两列:
df.groupby(['Stamp', 'EX']).apply(len)
所以我有一个类似于下面的数据框,其中 stamp 是日期时间索引; 对于上下文,它代表收到的订单,我的目标是匹配可能相同但作为两个单独订单出现的订单。
Stamp | Price. | indicator | EX | qty |
---|---|---|---|---|
1234 | 10 | 1 | d | 12 |
2345 | 30 | -1 | d | 13 |
我想将具有相同日期时间戳的条目分组,因为这些条目具有相同的 EX 和指标。
我想我知道如何只用图章来做到这一点,但是我不确定如何将 EX 和指标的条件添加到 groupby。
这里是初学者,非常感谢任何帮助!
试试这个:
df.groupby(["Stamp", "EX", "indicator"])
如果您想要获得数量和价格的总和,您可以这样做:
df.groupby(["Stamp", "EX", "indicator"]).sum()
您可以对多个列进行分组:df.groupby(['Stamp', 'EX'])
然后你可以检查每组的长度,看看是否有多个行共享两列:
df.groupby(['Stamp', 'EX']).apply(len)