使用翻转内部每个不在KDB中工作

mch*_*hen 2 kdb

each桌子上,我期待each在一排表的形式在时间上一行进行操作.但是,它首先被转换为字典:

q) t:flip `a`b!(enlist 1;enlist 2);
q) {type x} each t
enlist 99h  / dictionary
Run Code Online (Sandbox Code Playgroud)

因此,显而易见的事情就是使用flip将字典变成表格:

q) {type flip x} each t
An error occurred during execution of the query.
The server sent the response:
rank
Studio Hint: Possibly this error refers to invalid rank or valence
Run Code Online (Sandbox Code Playgroud)

嗯 - 那太奇怪了.不能flip字典?出了什么问题?

小智 7

请记住,表格是字典列表.

q)show each ([]a:1 2 3;b:4 5 6);
a| 1
b| 4
a| 2
b| 5
a| 3
b| 6
Run Code Online (Sandbox Code Playgroud)

http://code.kx.com/q4m3/8_Tables/

每个字典的值都是原子,而不是列表.所以你不能flip将字典改成表格,你必须确保值是列表.

q)enlist each ([]a:1 2 3;b:4 5 6)
+`a`b!(,1;,4)
+`a`b!(,2;,5)
+`a`b!(,3;,6)
q)type each enlist each ([]a:1 2 3;b:4 5 6)
98 98 98h
Run Code Online (Sandbox Code Playgroud)