(q/kdb+) 循环 take 运算符导致类型错误

问题描述 投票:0回答:1

索引列表

q)iTT
1 2 3 4 1

数据一览

q)data
"data1"
"data2"
"data3"
"data4"
"data5"

获取函数循环

q){x#y}'[iTT;data]
'type
  [1]  {x#y}
q)type iTT
7h
q)type data
0h

出于某种原因,当我循环执行此逻辑时,我不断收到类型错误。

如果我从每个变量中获取第一个元素并在函数外部运行它,它会工作得很好。

有人能解释一下为什么当我循环多个值时会出现此错误吗?

kdb
1个回答
0
投票

为我奔跑:

q)iTT:1 2 3 4 1
q)data:"data",/:string 1+til 5
q)iTT
1 2 3 4 1
q)data
"data1"
"data2"
"data3"
"data4"
"data5"
q){x#y}'[iTT;data]
,"d"
"da"
"dat"
"data"
,"d"

你是如何创作的

data

都是字符数组吗?

q)distinct type each data
,10h
© www.soinside.com 2019 - 2024. All rights reserved.