Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
現在、以下3つのテーブルがロードされ、①と②はアカウントID、②と③は品目でリレーションが貼られている状態です。
テーブル①=全アカウント登録データ
・アカウントID
・登録日
・年代
テーブル②=全購入データ
・アカウントID
・購入ID
・購入日
・品目
テーブル③=全販売品目データ
・品目
・発売日
このとき、ピボットを使用し、”2022年の登録者”における品目ごとの購入率「購入者数(distinct)/全登録者数(2022年登録)」を一つのテーブル内で実現したいのですが、全登録者数がうまくいきません。
なお、”2022年の登録者”の部分については、フィルタを使用し、21年、23年など流動的なものとしたいです。
ご教示お願いいたします。
Qlik SenseかQlikViewのどちらかをお使いでしょうか?
また、単純なサンプルアプリを添付されると、みなさんの理解の助けになると思います。
Qliksenseを使用しております。
よろしくお願いいたします。
※データ追加しました。
選択状態によらず、軸ごとの全レコードの集計結果を得たい場合には、
Count(distinct [アカウントID]) や count(all <[年代]>distinct [アカウントID])
ではなく、
Count({1} distinct [アカウントID])
を利用してください。
参考: [set 分析]
https://help.qlik.com/ja-JP/cloud-services/Subsystems/Hub/Content/Sense_Hub/ChartFunctions/SetAnalys...
その方法ですと、軸である「品目」毎に集計されてしまうため、全登録者数が実現できません。(登録のみで購入を行っていない人が集計されない)
下記画像は、登録日を2022年で絞った場合に実現したい結果です。
count(all <[年代]>distinct [アカウントID])
ではなく
count(ALL distinct [アカウントID])
にすれば、すべて5になりますね。添付の画像を参照してください。
また、すべての行を表示させたい場合には、
count(all <[年代]>distinct [アカウントID])
ではなく
count(ALL <[アカウントID]> distinct [アカウントID])
を使用してみてください。添付の画像のようになります。
添付されているエクセルの画像によると、2軸目の30代は、全登録者数は 0 になっていますが、そこは 0 で表示したいという事でしょうか? 20代が 3 なのは理解できますが。。。
すみません、記載の仕方が悪かったのですが、年代軸およびフィルタの登録日は残して計算したいため、すべて5にするのではなく、20代なら3(2022年の登録者),30代なら0(2022年の登録者)、というように計算は可能でしょうか?
フィルタで2022年を選択した場合、
2022年各年代登録者のうち、品目を購入した人の数 / 2022年の各年代登録者数
を実現したいです。