Проведение расчета скрипта Python в Таблице - PullRequest
0 голосов
/ 04 марта 2019

Я пытаюсь подсчитать среднесуточный объем акций в Таблице с учетом тикера акций.Я уже связал Python с Tableau;однако расчет не удался, и появляется следующее сообщение об ошибке: enter image description here

Ниже приведен мой код Python в таблице: enter image description here

Я создал параметр в Таблице, чтобы пользователь мог выбрать интересующую его акцию. И имя параметра - [Тикер акций].Может ли кто-нибудь помочь мне с этим?Спасибо

1 Ответ

0 голосов
/ 04 марта 2019

Из TabPy Github Документация:

"Tableau ожидает, что SCRIPT вернет один столбец, который имеет либо одну строку, либо такое же количество строк, как он был передан вTabPy. "

Параметр ATTR ([Stock ticker), который отправляется в Python, фактически отправляется в массиве.Если вы представляете свои данные в Таблице как большую кросс-таблицу, этот параметр фактически повторяется для каждой строки.

Я думаю, что если вы перетащите [Количество записей] на лист, вы увидите, что в Таблице содержится 519733 записи - первое число в ошибке.Ваш скрипт Python пытается вернуть 1612 записей в соответствии с 519733, который ожидает получить Tableau.

Я согласен с @cmcau, что все или некоторые из них могут быть выполнены только в Tableau.Код может выглядеть примерно так - с использованием функции LOD:

{Fixed [Symbol]: SUM([Shares])}/85

Обратите внимание, что [Symbol] выше - это поле, а не параметр

По сути, выполняется одно и то же - агрегирование всех долейза символ, затем разделив на 85.

В противном случае, в вашем скрипте Python попробуйте изменить аргумент из параметра (то же самое значение, повторяемое для всех строк) в поле (которое затем будет специфичным для этой строки вмассив, отправленный в Python.) Это приведет к тому, что возвращаемый Python будет массивом значений, которые соответствуют массиву, отправленному в Python.Будьте осторожны, потому что, поскольку ваш код Python написан, каждая строка, читаемая в массиве, отправляемом в Python, вызовет поиск всего вашего CSV.

...