Skip to main content
Woohoo! Qlik Community has won “Best in Class Community” in the 2024 Khoros Kudos awards!
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

マクロまたは重回帰分析について

いつもお世話になっております。

ご存知の方がいらっしゃれば教えていただきたい点が3点あります。

一度に3点も、また、いつもいつも申し訳ないのですが、

どれか一つでもわかるかたがいらっしゃれば、ご教授お願いいたします。

テーブルからデータを読み込み、テーブルボックスでいくつか項目を選択して表示させた場合、

全ての項目がまったく等しい行ができる場合があると思います。

その場合、等しいデータは1行にまとめられてしまうのですが、設定か何かでまとめず表示することは可能でしょうか。

QlikViewでExcelのデータ分析ツール→回帰分析から出力できる

重回帰分析結果と同じものを作成しようとしています。

QlikViewに入っている統計チャートウィザードやテーブルチャートの直線回帰では

単回帰分析やカイ二乗検定、t検定ができるようですが、

重回帰分析は見当たりません。

もし重回帰分析ツールがある、または簡単にできる方法が

ありましたらご教授ください。

また、そのツールがない場合はマクロで自動出力されるように

コーディングをしようと思っています。

そこで、マクロ内でのVBの記述の部分で列名を指定してデータを計算する方法を教えていただけないでしょうか。

たとえば、

Sub McroCul

set ob_TX01 = ActiveDocument.getsheetobject("TX01")

set prop_TX01 = ob_TX01.GetProperties

prop_TX01.Layout.Text.v = sum("列名")☆

ob_TX01.SetProperties prop_TX01

End Sub

の、☆の部分への指定の仕方です。※ロードテーブルの列名を想定しています。

1点でも何か方法をご存じの方がいらっしゃれば

よろしくお願いいたします。

1 Solution

Accepted Solutions
kogasawara
Partner - Creator
Partner - Creator

1と2について回答します。

1については、Load文にRowno()を記述することで、重複している値も別々の行として認識することが

可能です。

項目,Rowno()

あ,1

あ,2

い,3

う,4

う,5

え,6

お,7

また、テーブルボックスでは特定の列を非表示することができないので、ストレートテーブルで対応

することが可能です。

軸に任意の項目と、Rowno()を追加し、数式はなんでもいいので1と入力し、プレゼンテーションタブの

列の非表示で不必要な列は非表示にします。

2については、QlikViewでは無理みたいです。。。

Ideaで登録されてました。

http://community.qlik.com/ideas/1563

もしかしたら拡張要求が認められたら新機能として追加されるかもしれないですね。

View solution in original post

6 Replies
kogasawara
Partner - Creator
Partner - Creator

1と2について回答します。

1については、Load文にRowno()を記述することで、重複している値も別々の行として認識することが

可能です。

項目,Rowno()

あ,1

あ,2

い,3

う,4

う,5

え,6

お,7

また、テーブルボックスでは特定の列を非表示することができないので、ストレートテーブルで対応

することが可能です。

軸に任意の項目と、Rowno()を追加し、数式はなんでもいいので1と入力し、プレゼンテーションタブの

列の非表示で不必要な列は非表示にします。

2については、QlikViewでは無理みたいです。。。

Ideaで登録されてました。

http://community.qlik.com/ideas/1563

もしかしたら拡張要求が認められたら新機能として追加されるかもしれないですね。

Not applicable
Author

いつもありがとうございます。

①について、教えていただいた方法でできました!

列を非表示にするという考えは思いつきませんでした。

ありがとうございます。

大変恐縮なのですが

もう一つ質問させていただいてよろしいでしょうか。

もしご存じならお教えください。

テーブルオブジェクトやストレートテーブルで、

set分析を使用して行を絞り込むことはできますでしょうか。

一つの項目に対して集計関数の中にset分析を使用するのではなくて

オブジェクトの行に対し、where 年齢 > 50のような条件を追加したいのです。

※ロードスクリプトで予め絞るか、年齢リストボックスを別に作成して絞り込み、連動させるとできるのですが、それは使用したくありません。

本当にたびたびすみません。。。よろしくお願いします。

kogasawara
Partner - Creator
Partner - Creator

テーブルボックスでは、数式の設定や非表示の設定ができないので、

できるとしたらストレートテーブルですね。

イメージが違うかもしれないんですが、年齢の数式がsum(年齢)の場合、

sum({<年齢={">50"}>}年齢)に変更すると、他の列も年齢が50未満の

値は非表示になります。

QVWの添付方法がわからないので、以下にインラインロード文貼り付けます。

すみません。。。

LOAD * inline

[

名前,性別,年齢

阿藤,男,38

伊藤,女,60

宇藤,女,73

江藤,男,44

尾籐,女,65

加藤,男,89

紀藤,男,31

工藤,女,27

];

この場合、テーブルボックスで名前、性別、年齢を設定すると

取り込んだデータすべてが表示されます。

ストレートテーブルで、軸に名前、性別、数式に

sum({<年齢={">50"}>}年齢)を設定すると、年齢が50より

大きい行しか表示されなくなります。

イメージ間違ってたらすみません。。。

hka
Employee
Employee

追記しておきます。

最初の質問の②に関しては、おがけんさんの書き込みのように

簡単に実行できるツールはありません。

重回帰の計算式を数式の中に頑張って作れば実現可能だと思います。

③に関してはこの数式で実現できれば必要ないかもしれません。

Not applicable
Author

おがけんさん

イメージ通りです!

データ例を作ってくださってとても分かり易く、

その通りにやってみると

見事、ちゃんと行ごと絞り込むことができました。

ありがとうございます!!!

Not applicable
Author

hkaさん

ありがとうございます。

やはりそうなのですね。。。

重回帰分析はビジネスの分析で重宝するので

少し不便ですね・・・

今、数式の中に組み込むようがんばっているのですが、

linestなどの関数を重回帰でどのように使用するのか悩み、奮闘中です。

マニュアルの表記が分かりづらくて・・・

もう数日悩み、分からなかったらまた

ここにお世話になってしまうかもしれません。。。

もし統計にお詳しければその時はよろしくお願いします。