Size: a a a

2019 September 07

H

Hellcat in Qlik BI chat
Анатолий Ветринцев
Совет тоже нужен:) есть таблица [id респондента], [вопрос], [ответ]. Может быть выбрано 3 ответа. И у каждого ответа будут свои респонденты. Мне надо в формуле отобрать только тех респондентов, каждый их которых дал все 3 выбранных ответа. Я нашёл два варианта составить строку типа [ответ]={'ответ 1'}*{'ответ 2'}*{'ответ 3'} с помощью GetFieldSelectin, либо отфильтровать по условию [I'd респондента]={"=Count([ответ])=$(=GetSelectedCount([ответ]))"}. Какой будет быстрее, и есть ли другие варианты?
Вам же нужно показывать распределение других ответов именно по респондентам, которые дали выбранный Вами ответ на другой диаграмме, поэтому я бы создала альтернативное состояние для диаграммы, в которой Вы делаете выборку, а в set analysis других диаграмм написала count({<респондент=state1::респондент, id_ответа-=state1::id_ответа>}  distinct id_ответа)
источник

АВ

Анатолий Ветринцев... in Qlik BI chat
Hellcat
Вам же нужно показывать распределение других ответов именно по респондентам, которые дали выбранный Вами ответ на другой диаграмме, поэтому я бы создала альтернативное состояние для диаграммы, в которой Вы делаете выборку, а в set analysis других диаграмм написала count({<респондент=state1::респондент, id_ответа-=state1::id_ответа>}  distinct id_ответа)
Тогда выборка в других состояниях будет возможна только через кнопку "выборки"? И га диаграмме кликнуть нельзя?
источник

H

Hellcat in Qlik BI chat
Не дописала)
источник

H

Hellcat in Qlik BI chat
Кликнуть можно будет
источник

H

Hellcat in Qlik BI chat
Hellcat
Вам же нужно показывать распределение других ответов именно по респондентам, которые дали выбранный Вами ответ на другой диаграмме, поэтому я бы создала альтернативное состояние для диаграммы, в которой Вы делаете выборку, а в set analysis других диаграмм написала count({<респондент=state1::респондент, id_ответа-=state1::id_ответа>}  distinct id_ответа)
У меня почему-то не всегда срабатывает в sense set analysis, написанный через поле=state::поле
источник

H

Hellcat in Qlik BI chat
Если не сработает, попробуйте через concat сформировать список, записать в переменную, и его подставить в set
источник

АВ

Анатолий Ветринцев... in Qlik BI chat
Hellcat
Кликнуть можно будет
Этот клик повлияет же на текущее состояние, и все другие диаграммы в этом же состоянии перестроится в null (у них по определению нет такого ответа)
источник

АВ

Анатолий Ветринцев... in Qlik BI chat
Oleg Troyansky
С удовольствием:

https://amzn.to/2ZE0QoU
Oleg книга про QlikView, а у нас QlikSense - есть разница? Или лучше поискать книги по сенс?
источник

OT

Oleg Troyansky in Qlik BI chat
Анатолий Ветринцев
Oleg книга про QlikView, а у нас QlikSense - есть разница? Или лучше поискать книги по сенс?
Добрыйй день, Анатолий. Тут выбор такой - если научиться как работает интерфейс Qlik Sense - то лучше искать книги по Sense, но я шибко хороших не знаю (может, они и есть...) А чтобы понять тенологию Qlik поглубже - как моделировать данные, как пользоваться Сет Анализом, и т.д. - то рекомендую начиться по моей книге и перенести эти знания в среду Qlik Sense. Методология одна и та же.
источник

OT

Oleg Troyansky in Qlik BI chat
Анатолий Ветринцев
Совет тоже нужен:) есть таблица [id респондента], [вопрос], [ответ]. Может быть выбрано 3 ответа. И у каждого ответа будут свои респонденты. Мне надо в формуле отобрать только тех респондентов, каждый их которых дал все 3 выбранных ответа. Я нашёл два варианта составить строку типа [ответ]={'ответ 1'}*{'ответ 2'}*{'ответ 3'} с помощью GetFieldSelectin, либо отфильтровать по условию [I'd респондента]={"=Count([ответ])=$(=GetSelectedCount([ответ]))"}. Какой будет быстрее, и есть ли другие варианты?
Посмотрите в моём блоге, была статья на эту тему - Excluding the excluded. По-моему, близко к Вашейпроблеме.

https://naturalsynergies.com
источник

АВ

Анатолий Ветринцев... in Qlik BI chat
Oleg Troyansky
Добрыйй день, Анатолий. Тут выбор такой - если научиться как работает интерфейс Qlik Sense - то лучше искать книги по Sense, но я шибко хороших не знаю (может, они и есть...) А чтобы понять тенологию Qlik поглубже - как моделировать данные, как пользоваться Сет Анализом, и т.д. - то рекомендую начиться по моей книге и перенести эти знания в среду Qlik Sense. Методология одна и та же.
Ок, спасибо!
источник

АВ

Анатолий Ветринцев... in Qlik BI chat
Oleg Troyansky
Посмотрите в моём блоге, была статья на эту тему - Excluding the excluded. По-моему, близко к Вашейпроблеме.

https://naturalsynergies.com
Спасибо, пример очень полезный. Он позволяет отобрать только тех респондентов, которые дали только выбранные ответы, и не дали других.
источник

АВ

Анатолий Ветринцев... in Qlik BI chat
Анатолий Ветринцев
Спасибо, пример очень полезный. Он позволяет отобрать только тех респондентов, которые дали только выбранные ответы, и не дали других.
Я ищу всех тех респондентов, которые дали все выбранные ответы и возможно ещё и другие
источник

АВ

Анатолий Ветринцев... in Qlik BI chat
Но наверное это где то рядом с вашим)
источник

OT

Oleg Troyansky in Qlik BI chat
Анатолий Ветринцев
Я ищу всех тех респондентов, которые дали все выбранные ответы и возможно ещё и другие
Для таких, Ваш собственный пример с Сет анализом должен работать. Но, если отвечающих очень много, то такой фильтр может тоже быть очень тяжёлым. В таких случаях, условие IF может оказаться быстрее (не говорите никому, что я такое сказал)
источник

АВ

Анатолий Ветринцев... in Qlik BI chat
Oleg Troyansky
Для таких, Ваш собственный пример с Сет анализом должен работать. Но, если отвечающих очень много, то такой фильтр может тоже быть очень тяжёлым. В таких случаях, условие IF может оказаться быстрее (не говорите никому, что я такое сказал)
Я думаю там максимум 5-7 выборов будет, поэтому ок. Спасибо!
источник

АВ

Анатолий Ветринцев... in Qlik BI chat
А какой будет быстрее:
источник

АВ

Анатолий Ветринцев... in Qlik BI chat
1.
{$(='<[id респондента]=P(<[ответ]={''' & GetFieldSelection([ответ],'''}>)>*<[id респондента]=P(<[ответ]={''') & '''}>)>')}

Или

2.
{<[id респондента] = {"=Count([ответ])=$(= GetSelectedCount([ответ]) )"}>}
источник

OT

Oleg Troyansky in Qlik BI chat
Анатолий Ветринцев
1.
{$(='<[id респондента]=P(<[ответ]={''' & GetFieldSelection([ответ],'''}>)>*<[id респондента]=P(<[ответ]={''') & '''}>)>')}

Или

2.
{<[id респондента] = {"=Count([ответ])=$(= GetSelectedCount([ответ]) )"}>}
Трудно сказать навскидку, нужно тестировать
источник

АВ

Анатолий Ветринцев... in Qlik BI chat
Oleg Troyansky
Трудно сказать навскидку, нужно тестировать
А как замерить скорость на серверном приложении?
источник