グラフビルダー: 複数の回答列を使用すると統計が不明確になるこんにちは、みんな、
複数の応答列を使用した統計/棒グラフに関して問題があります。例として、Big Class Families データ テーブルを使用し、JMP18 を使用します。
特定の国を訪れた人の割合をプロットしたいのですが、簡単にするために年齢を 14 歳に制限しました。次のスクリプトを使用してグラフ ビルダーを作成しました。
Graph Builder(
Size( 1097, 475 ),
Legend Position( "Right" ),
Fit to Window( "Off" ),
Summary Statistic( "Median" ),
Order Statistic( "Median" ),
Variables( X( :countries visited ), Group X( :age ) ),
Elements(
Bar(
X,
Legend( 5 ),
Summary Statistic( "N" ),
Label( "Label by Percent of Total Values" )
),
Caption Box( X, Legend( 6 ), Summary Statistic( "Median" ) )
),
Local Data Filter(
Add Filter(
columns( :age ),
Where( :age == 14 ),
Display( :age, N Items( 6 ) )
)
)
);

棒グラフのパーセンテージ ラベルには、カウント 1 と 2 に対してそれぞれ 9.1 と 18% の値が表示されています。パーセンテージを各年齢 (12) の人数を基準値として計算すると、1/12 ~ 8.3% と 2/12 ~ 17% の値になるはずです (間違っていたら訂正してください)。何らかの理由で、JMP は回答数をパーセンテージ計算の基準値として使用しているようです (この場合は 11 なので、1/11 ~ 9.1% と 2/11 ~ 18%)。
複数の回答列での計算では、それぞれの行の数ではなく、回答数が基本値として使用されるのは意図されているのでしょうか? 意図したとおりに値をプロットするためのベスト プラクティスは何ですか (行数に対するパーセンテージをラベルとして)?
基本的なデータ分析とモデリングデータの探索と視覚化Re: グラフ ビルダー: 複数の応答列を使用すると統計が不明確になるこんにちは@gnu23 : 提案された方法 (人数の 12 で割る) では、合計は 100*(5/12 + 6/12) = 91.67% となり、100% 未満になります。回答数 (11) で割ると、合計は 100*(5/11 + 6/11) = 100% となり、当然の結果です。グラフ ビルダーのプルダウンの赤い三角から [欠落しているカテゴリを含める] (5/16) を選択すると、より完全なデータを表示できます。または、人数を "n" として使用する場合は、訪問国を単一の名目回答に変更し、訪問した国に対しては "回答なし" など、非回答者に対しては何かを入力する必要があります (または、上記のように[欠落しているカテゴリを含める]オプションを使用します)。
つまり、プロットに何を表示しようとしているかによって異なります。郡への訪問 (図を参照) に焦点を当てていますか、それとも個人の旅行履歴に焦点を当てていますか?
Re: グラフ ビルダー: 複数の応答列を使用すると統計が不明確になるこんにちは@MRB3855 、
迅速な回答をありがとうございます。行数で割るとパーセンテージの合計が 100% にならないことは承知していますが、これは「複数の回答」がある列を扱う場合、非常に論理的な結果だと思います。この場合、単一の名目回答を使用するのも選択肢の 1 つですが、機能性も低下します。
私がこの図で概説したいのは、ある国の「人気」のようなもの、言い換えれば、ランダムに選んだ人物が国 x に行ったことがある確率がどれくらいかということです。
この種の奇妙な統計のより深刻な例としては、たとえば 12 人のデータセットがあり、そのうち 1 人だけが 2 か国に行ったことがあり、残り全員がどの国にも行ったことがない、という場合が挙げられます。上記のようなプロットでは、両国とも 1/12 ではなく、両国とも 50% (1/2 の回答) と表示されます (これは私の意見では理にかなっています)。[欠損値を含める] を使用しても、欠損値が追加の回答として追加されるため、この問題は修正されませんが、行ではなく回答がカウントされ、少なくとも 1 行に複数の回答がある限り、(私の意見では) 間違ったパーセンテージ値が生成されます。
議論は、多重応答列の統計では一般的に応答数 (現在 JMP では標準) を使用するか、行数を「n」として使用するかという問題に行き着くと思います。私の意見では、2 番目のオプションの方が多くのユース ケースでより合理的であり、「n」のこれら 2 つの値を切り替えるオプションにより、多重応答列の (すでに非常に優れた) 機能がさらに向上します。
Re: グラフ ビルダー: 複数の応答列を使用すると統計が不明確になる同意します。1行が1とカウントされる使用例は、複数の回答があるエントリであっても、非常に明白です。:)
「学生の何パーセントがイタリアを訪問しましたか?」
次のような質問を受ける可能性が高くなります。
「学生がいずれかの国を訪れたすべてのケースで、イタリアを訪れた頻度はどのくらいですか?」
私は「100%」の議論に囚われていたことを認めなければなりませんが、このトピックについて昼食時に議論した後、 「何パーセントの学生が...を訪問したか?」のような比率は合計が 100% になる必要はないと認めることにしました。値を計算するにはどうすればよいでしょうか?
応答をカウントする奇妙な動作は、複数のヒストグラムが 1 つのグラフに結合されると、さらに奇妙になります。
グラフビルダー: 複数の回答 + 複数のヒストグラム
学校が Jmp を使ってスポーツ活動を評価していると仮定しましょう。生徒が旅行する時間が十分にある場合、不正行為をしてスポーツ活動のスコアを桁違いに上げることができます。LOUISE が世界を旅行する様子と、「バスケットボール」の統計への影響をご覧ください。


dt = Open( "$SAMPLE_DATA/Big Class Families.jmp" );
NewWindow("compare",H List box(
dt << Graph Builder(
Show Control Panel( 0 ),
Variables(
X( :sports ),
X( :countries visited )
),
Elements( Position( 1, 1 ), Bar( X, Legend( 3 ) ) ),
Elements( Position( 2, 1 ), Bar( X, Legend( 8 ) ) ),
SendToReport(
Dispatch(
{},
"",
ScaleBox,
{Min( 0 ), Max( 50 ), Inc( 10 ), Minor Ticks( 1 )}
)
)
);
dt << Graph Builder(
Show Control Panel( 0 ),
Variables( X( :sex ) ),
Elements( Bar( X, Legend( 3 ) ) ),
SendToReport(
Dispatch(
{},
"",
ScaleBox,
{Min( 0 ), Max( 50 ), Inc( 10 ), Minor Ticks( 1 )}
)
)
)));
dt << Minimize Window();
New Window( "",
<<TYPE></TYPE>
Re: グラフ ビルダー: 複数の応答列を使用すると統計が不明確になる
@MRB3855 は次のように書きました:
@hogiは言った:
「学生の何パーセントがイタリアを訪問しましたか?」
...
本当ですか?分かりません…
...私はちょうどクラスの先生がこう尋ねたことを考えました。
「今年イタリアに行ったのは誰ですか? すごい、全員です! フランスは? クラスの 30% です...」
クラスに生徒が 10 人いると仮定します。
全員がイタリアを訪問しました:100%。
そのうち3人がフランスを訪問:30%
そのうち5人がブラジルを訪問: 50%
合計(3つの数字だけ見ると):「180%」
同意します。これは間違いなくパーセンテージで計算する方法ではありません:)
私の脳は爆発しそうになりましたが、100%、30%、50% は「意味がある」ということには同意していただけると思います。
たった2つ。
- 合計しても100%にならない
- JMP の「合計値のパーセントによるラベル付け」*)や同様のアプローチでは計算できません。
*) 次のようなものがあると便利かもしれません: 「すべての行のパーセントでラベル付け」 (複数の応答のないすべてのプロットのように)
したがって、私は@gnu23の提案を支持し、「応答」ではなく行で計算する 2 番目または代替のオプションを提供します...
Re: グラフ ビルダー: 複数の応答列を使用すると統計が不明確になる
@MRB3855 は次のように書きました:
学生は複数の国を訪問できる
はい、これが「複数の応答」の基本的な考え方だと思います:)
Re: グラフ ビルダー: 複数の応答列を使用すると統計が不明確になる確かに@hogi : そして考えを完成させるために、これを徹底的に論破するために...ただし、学生は一度に複数の国を訪問することはできません (たとえば、学生はイタリアとドイツに同時にいることはできません)。したがって、そのように定義すると、それらの国は相互に排他的です。そしてその場合、どの国にも訪問しなかった学生を含むケースと組み合わせると、集合的に網羅的でもあります。すると、それらを合計すると 100% になります (現在の方法のように回答をカウントすることにより)。
君がそうだったように...
Re: グラフ ビルダー: 複数の応答列を使用すると統計が不明確になる他のユーザーが「代替」(Ntotal = Nrows) 統計に興味がある場合は、次のことを希望します。
グラフ ビルダー: 応答別ではなく行別の統計のオプション
最も重要なことは、モデリング タイプが「複数の応答」の列がプロット内のどこででも使用されると、グラフ ビルダーが統計を計算する方法全体が変わることです。
Re: グラフ ビルダー: 複数の応答列を使用すると統計が不明確になる消費者調査/カテゴリ別反応調査でしょうか?
https://community.jmp.com/t5/Discussions/Question-related-to-multiple-response-variable-how-to-generate/mp/766131/highlight/true#M94610
Open( "$SAMPLE_DATA/Big Class Families.jmp" );
Categorical(
Count Missing Responses( 1 ),
Multiple Delimited( :countries visited )
);
旅行が多い学生は、分母でも N 回カウントされます。
→ 修正済み
旅行しない学生はカウントされません!
→ fixed via Count Missing Responses( 1 )
そして - じゃじゃーん! - [統計は下部に表示]:

Open( "$SAMPLE_DATA/Big Class Families.jmp" );
Categorical(
Count Missing Responses( 1 ),
Multiple Delimited( :countries visited ),
Legend( 0 ),
Local Data Filter(
Close Outline( 1 ),
Add Filter(
columns( :age ),
Where( :age == 14 )
)
)
);