如果我要将列表拆分为2行,我可以使用:
q)2 0N#til 10
但是,以下语法不起作用:
q)n:2
q)n 0N#til 10
我怎样才能实现这样的重塑?
答案 0 :(得分:1)
需要括号和半冒号
q)2 0N#til 10
0 1 2 3 4
5 6 7 8 9
q)n:2
q)(n;0N)#til 10
0 1 2 3 4
5 6 7 8 9
答案 1 :(得分:1)
以下是以矩阵形式拆分列表的一般语法:
(list1)#(list2)
如您所见,“#”的左侧部分和右侧部分是列表。所以这是一个例子:
q)list1: (4;3) / or simply (4 3)
q)list2: til 12
q)list1#list2
我们可以用2种方式制作一个整数列表:
但是当你有变量时,选项2不起作用;
q)list1: (n 3) / where n:2
q) `type error
因此,对于您的问题,解决方案是使用分号来创建列表:
q) list1:(n;0N)
q) list1#til 10