[[20240131220800]] 『SLOPE関数に関して』(凡人会社員) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『SLOPE関数に関して』(凡人会社員)

X軸が1種類の場合傾きは算出されないはずなのに
値が出力されるのはなぜなのでしょうか。

X軸)1.2,1.2,1.2,1.2,1.2,1.2,1.2,1.2,1.2,1.2
Y軸)0.2,0.4,0.6,0.8,1.0,1.2,1.4,1.6,1.8,2.0
上記(X軸:1.2固定/Y軸:+0.2毎)では-0.3と出力されます。

既出でしたら申し訳ございません。
(過去ログは軽く目を通しましたが見当たりませんでした)

ご教授のほど何卒よろしくお願い申し上げます。

< 使用 Excel:Microsoft365、使用 OS:Windows10 >


 小数点誤差に伴う事象でしょう。
 ちなみに、X1軸がすべて 1   ならエラーを返します
                        1.4 なら 0.3を返します。
 関数の中の計算式は開示されていますが、実際のロジックは非公開なので、
 一般ユーザーが解明できるものではないように思います。
 slope関数の定義からして、そのような前提での計算に余り意味がないことなので、
 力を入れて調査する意味も乏しいように思います。
(xyz) 2024/02/01(木) 07:31:00

 内部でどんな計算をやっているのか(計算精度も含めて)不明ですが、
 ヘルプに書かれている数式に当てはめると

 B3セル =SUM((B2:K2-AVERAGE(B2:K2))*(B1:K1-AVERAGE(B1:K1)))/SUM((B1:K1-AVERAGE(B1:K1))^2)

 <結果図>
 行 _A_ __B__ _C_ _D_ _E_ _F_ _G_ _H_ _I_ _J_ _K_
  1 X     1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2 1.2
  2 Y     0.2 0.4 0.6 0.8   1 1.2 1.4 1.6 1.8   2
  3      -0.3                                    

 中間値をセルに書き出さずに計算する必要がある。
 ※いちいち中間値をセルに書き出すと、その時点で姑息な微調整が行われてしまう。

 >(過去ログは軽く目を通しましたが見当たりませんでした)
 エクセルは一般論として、小数値の計算において数学的な正解は期待できない。
 (1.2の10個 の平均は、1.2になってくれず、僅かに小さい値となる)

(半平太) 2024/02/01(木) 10:18:56


ご回答ありがとうございます。
理解いたしました。

二進数処理での少数誤差は認知しております。
本件の目的は相関式(線形近似式の傾きと切片)の算出であり
参照するデータにはX軸が一意の数字になる場合があったため
その場合の結果を正しく「X軸が一意なので不可」と出力させてました。
その過程で疑問に思った次第です。
(凡人会社員) 2024/02/02(金) 08:23:15


 LINEST関数だと、0になるようです。
 ですが、欠損データがあるとエラーになるので使いにくいです。
(マナ) 2024/02/02(金) 12:21:42

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.