Как создать список по длине х с одинаковыми элементами? - PullRequest
2 голосов
/ 25 апреля 2019

Я хотел бы создать список в q / kdb переменной длины x, содержащий повторяющийся элемент e. Например:

x:4;
e:`this;
expected_result:`this`this`this`this

Ответы [ 4 ]

6 голосов
/ 25 апреля 2019

Как уже упоминалось, # является лучшим решением в единственном числе. Если вы хотите скопировать несколько элементов в один большой список, то where может легко достичь этого

q)`this`that where 4 2
`this`this`this`this`that`that
5 голосов
/ 25 апреля 2019

Взять то, что вы ищете: https://code.kx.com/v2/ref/take/

q)x:4
q)e:`this
q)x#e
`this`this`this`this
2 голосов
/ 25 апреля 2019

Использование '#' (дубль) функция:

 q) x:4
 q) e:`this
 q) x#e
2 голосов
/ 25 апреля 2019

Вы можете сделать это, используя # https://code.kx.com/v2/ref/take/

q)n:4
q)vals:`this
q)n#vals
`this`this`this`this
...