2015-10-14 4 views
0

Я создал расчетное поле (№ строки), где вычисляется значение Index(). Затем попытался связать его с полем (Name), которое имеет текстовые данные. Затем я создал другое вычисленное поле (Concat), где вычисляется, attr ([Name]) + '_' + str ([Row No.]). Поле «Конкат» показано в разделе «Меры». Как я могу использовать это как измерение?Как создать вычисляемое поле измерения путем конкатенации индекса() с текстовым полем

Как создать вычисленное поле, которое сделает каждую запись в поле «Имя», добавив к ней «подчеркивание» и число?

ответ

1

Есть два возможных способа иметь его как измерение. Во-первых, «ATTR» создает агрегацию, поэтому она является мерой. Вы должны уметь удалить это и все еще объединить с [Name] + '_' + str ([Row No.]).

Во-вторых, вы должны иметь возможность щелкнуть правой кнопкой мыши по измерению и выбрать «Преобразовать в дискретный», затем щелкнуть и перетащить его в раздел «Размеры».

+0

Если я удаляю «ATTR», тогда вычисленное поле вызывает ошибку «Невозможно смешивать агрегированные и неагрегатные аргументы с этой функцией». – Madhumita

+1

хорошо, как насчет моего второго предложения? – Bernardo

+0

Это сработало .. Спасибо .. – Madhumita

0

Вы не можете иметь измерение, основанное на вызове функции calc calc (например, index()), и на агрегатную функцию (например, sum()).

Однако вы можете преобразовать меру в дискретную, что позволит вам использовать ее для создания заголовков в вашем представлении.

Существует веская причина для этого ограничения. Размеры используются в начале порядка операций для разбиения строк данных на блоки. Они эффективно представляют собой предложение group by в выражении SQL. Агрегатные функции, такие как sum(), затем применяются к каждому разделу, а табличные вычисления применяются еще позже к обобщенным результатам запроса. Таким образом, вы не можете использовать эти результаты для возврата во времени и создания другого раздела ваших строк данных, поэтому Tableau не позволит вам вносить эти поля в измерения.

К счастью, как только вы понимаете порядок операций, вы обычно можете найти другие способы получения эффекта, который вам нужен.

В качестве сноски вы можете создать измерение, основанное на вычисленном поле FIXED LOD, которое включает вызовы агрегированной функции, такие как {FIXED [Region]: CountD ([Customer])}.