Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


6125 / 13645 ツリー ←次へ | 前へ→

【46978】回帰分析ツールで作成されるP-値 べりー 07/2/23(金) 22:55 質問[未読]
【46981】Re:回帰分析ツールで作成されるP-値 りん 07/2/24(土) 12:35 発言[未読]
【47064】Re:回帰分析ツールで作成されるP-値 べりー 07/2/27(火) 21:41 お礼[未読]

【46978】回帰分析ツールで作成されるP-値
質問  べりー  - 07/2/23(金) 22:55 -

引用なし
パスワード
   質問させていただきます。

分析ツール(回帰分析)で作成される表の中に記述されるP−値を
関数を使用して直接導きだすことはできますでしょうか?

【46981】Re:回帰分析ツールで作成されるP-値
発言  りん E-MAIL  - 07/2/24(土) 12:35 -

引用なし
パスワード
   べりー さん、こんにちわ。

>分析ツール(回帰分析)で作成される表の中に記述されるP−値を
>関数を使用して直接導きだすことはできますでしょうか?

直線回帰なら、作業セルも名前定義も使わずに作るならこんな長い式になりました。見難いし、範囲の変更も面倒です。

LINEST関数にINDEX関数を組み合わせています。
TDIST関数にマイナスをあたえるとエラーになるので絶対値をとっています。統計はずいぶん昔にやっただけなので、この方法で正しいのかどうかわかりませんが、分析ツールと同じ結果になりました。
データ範囲はY:A1:A10、X:B1:B10で、無効なデータの組合せが無いのが前提です。

切片(式が長くてエラーが出たので分割しました、メモ帳か何かでくっつけてください)
=TDIST(ABS(INDEX(LINEST(A1:A10,B1:B10,TRUE,TRUE),1,2)/
INDEX(LINEST(A1:A10,B1:B10,TRUE,TRUE),2,2)),
INDEX(LINEST(A1:A10,B1:B10,TRUE,TRUE),4,2),
COUNT(A1:A10)-INDEX(LINEST(A1:A10,B1:B10,TRUE,TRUE),4,2))
X 値 1(式が長くてエラーが出たので分割しました、メモ帳か何かでくっつけてください)
=TDIST(ABS(INDEX(LINEST(A1:A10,B1:B10,TRUE,TRUE),1,1)/
INDEX(LINEST(A1:A10,B1:B10,TRUE,TRUE),2,1)),
INDEX(LINEST(A1:A10,B1:B10,TRUE,TRUE),4,2),
COUNT(A1:A10)-INDEX(LINEST(A1:A10,B1:B10,TRUE,TRUE),4,2))

ほかにもあるかもしれませんが。
ちなみに、
 tは   =係数/標準誤差
   係数、標準誤差ともにLINESTで求める
 p−値は =TDIST(t値,残差自由度(?),データ個数−残差自由度(?))
   残差自由度はLINEST関数、データ個数はCOUNT関数でそれぞれ求める

【47064】Re:回帰分析ツールで作成されるP-値
お礼  べりー  - 07/2/27(火) 21:41 -

引用なし
パスワード
   りんさんこんにちは。

こんな大変な式になってしまうとは、
回答していただいてほんとうにありがとうございます!
回帰分析したいデータが
y=Ax+Bz+Cv・・
というような式(重回帰?)で、
さらに式が複雑になりそうですね・・。

式の説明までつけていただきありがとうございました。
使用させていただきます(^^)

6125 / 13645 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free