qPython QProjection Проблемы вместо запрашиваемых данных - PullRequest
0 голосов
/ 06 сентября 2018

Я попытался написать Q-код, который позволит мне передавать параметры, однако я получаю результаты в виде Q-проекции. Я пытался использовать

qpython.sync () возвращает QProjection вместо запрошенных данных

, но решение не работает (новичок в мире Q / kdb) Любые идеи о том, что именно я должен изменить?

q.sync(
'''{[x;y;z]select from quotestackevent where date within(x;y),sym=z}''', 
[np.datetime64('2018-04-14','D'), #start date
np.datetime64('2018-04-14','D'), #end date
np.string_('GBPUSD')])

1 Ответ

0 голосов
/ 07 сентября 2018

В Q / KDB функциональный формат - {......}[x;y;z] с аргументами x y z. Если вы оставили пустой аргумент, то функция становится проекцией.

qpython позволяет передавать аргументы python в функцию q в формате q.sync('{......}',x,y,z).

В вашем примере квадратные скобки приводят к тому, что входные данные передаются функции в виде одного массива, что приводит к проекции. Это можно исправить, сняв квадратную скобку.

q.sync('{[x;y;z]select from quotestackevent where date within(x;y),sym=z}', np.datetime64('2018-04-14','D'), np.datetime64('2018-04-14','D'), np.string_('GBPUSD'))

Надеюсь, это поможет!

...