用context by分组后,如何获取每组中除top 1外的所有行

如下图所示,name为a的value有[1,2,3,4],name为b的value有[2,3,4,5],我context by name后,我要得到每组内除value最小外的其他所有值,即a的[2,3,4],b的[3,4,5]。

请问在DolphinDB database中有什么简单的方法?

回答

DolphinDB中context by可以跟having子句搭配使用。如果过滤条件返回一个vector,那么返回值为true的行将被保留。如果过滤条件返回一个scalar,如果返回true,这个组所有行都被保留,如果返回false,这个组所有行都将被过滤掉。这个场景中只保留大于最小值的行:value > value.min()

t = table(1 2 3 4 2 3 4 5 as value, `a`a`a`a`b`b`b`b as name)

select * from t context by name having value > value.min()

以上是 用context by分组后,如何获取每组中除top 1外的所有行 的全部内容, 来源链接: utcz.com/a/37544.html

回到顶部