【发布时间】:2021-05-20 21:50:11
【问题描述】:
count times:102
count area:3
count no.of_people:2
t:ungroup([]time:times;area:(count [times])#enlist area;no.of_people:count[times]#enlist no.of_people )
当前出现长度错误。 我错过了什么?
【问题讨论】:
标签: kdb
count times:102
count area:3
count no.of_people:2
t:ungroup([]time:times;area:(count [times])#enlist area;no.of_people:count[times]#enlist no.of_people )
当前出现长度错误。 我错过了什么?
【问题讨论】:
标签: kdb
ungroup 以 'length 失败,因为每列的条目数不一致,IE area 有 3 个条目,no.of_people 有 2 个。
q)times:102?.z.t
q)area:`area1`area2`area3
q)no.of_people:10 20
q)([]time:times;area:(count [times])#enlist area;no.of_people:count[times]#enlist no.of_people)
time area no.of_people
-------------------------------------------
19:01:02.988 area1 area2 area3 10 20
16:10:13.387 area1 area2 area3 10 20
00:42:09.536 area1 area2 area3 10 20
15:13:03.964 area1 area2 area3 10 20
08:35:51.109 area1 area2 area3 10 20
..
从您的描述中不清楚您想要的输出是什么,但是如果您从列声明中删除enlist,则会返回一个表。
/ This returns 102 lists of 10 20
q)count[times]#enlist no.of_people
10 20
10 20
10 20
10 20
10 20
..
/ This returns one 102 item list of 10 20 repeated
q)count[times]#no.of_people
10 20 10 20 10 20 10 20 10 20 10 20 10 20 10 20 10 20 10 20 10 20 10 20 10 20..
q)([]time:times;area:(count [times])#area;no.of_people:count[times]#no.of_people )
time area no.of_people
-------------------------------
19:01:02.988 area1 10
16:10:13.387 area2 20
00:42:09.536 area3 10
15:13:03.964 area1 20
08:35:51.109 area2 10
..
否则,要让您的初始 ungroup 正常工作,您需要确保每行的列具有相同数量的条目(每行具有一个条目的列是“向量扩展的”)。
q)([]time:times;area:(count [times])#enlist area;no.of_people:(count [times])#enlist count[area]#no.of_people)
time area no.of_people
-------------------------------------------
19:01:02.988 area1 area2 area3 10 20 10
16:10:13.387 area1 area2 area3 10 20 10
00:42:09.536 area1 area2 area3 10 20 10
15:13:03.964 area1 area2 area3 10 20 10
08:35:51.109 area1 area2 area3 10 20 10
..
q)ungroup([]time:times;area:(count [times])#enlist area;no.of_people:(count [times])#enlist count[area]#no.of_people)
time area no.of_people
-------------------------------
19:01:02.988 area1 10
19:01:02.988 area2 20
19:01:02.988 area3 10
16:10:13.387 area1 10
16:10:13.387 area2 20
..
【讨论】: