カイロプラクターの日々

卒業したので改題

卒業研究奇 死闘編 魁鬼屍鬼

前回、重さのサンプリングデータを涙ながらに作成したので、回帰式の推定です。

 

omta.hatenablog.jp

推定作業には、統計言語R を利用します。;

これは、統計データ処理言語というか、処理環境というかとにかくスクリプトベースで

データのハンドリングと各種統計処理や視覚化が可能なフリーソフトウェアである。

10年ほど前に、某業界で市場データ分析のまねごとをしていたときに覚えたものです。

www.okadajp.org

当時見ていたwikiが存続していた。すばらしい!!困ったときは絶対ここ。

で、回帰式には通常、線形回帰を使うのですが今回は以下のような、非線形っぽい分布に式をあてはめる必要があるのです。

f:id:komta:20170206142952p:plain

 

で、以下のサイトを参考にやってみました。

R言語で統計解析入門: 非線形回帰分析 A nonlinear regression analysis 梶山 喜一郎

が、しかしモデルによって計算不能になってしまい唯一可能だったの累乗モデルだけでした。

で、累乗モデルは、Y = a*X^b で式をたてる、a, bの係数を求めるものです。

推定できた重みは以下。

 a = 1872000;

b = -1.265;
よって式は、Y=1872000*X^(-1.265)

この式の当てはまり具合を視覚化すると以下

f:id:komta:20170206143804p:plain

で、式の評価をみてみると

> cor.test( 予測データ, 実績データ , method="pearson")

        Pearson's product-moment correlation

data:  予測データ and 実績データ
t = 1406.5, df = 13792, p-value < 2.2e-16
alternative hypothesis: true correlation is not equal to 0
95 percent confidence interval:
 0.9964149 0.9966460
sample estimates:
      cor
0.9965324

相関係数が 0.99以上なのでまあよしとする、がもうちょっと改善したいので

deta.hateblo.jp

ここのマルカート法でモデルで再計算。

Parameters:
                Estimate Std. Error t value Pr(>|t|)    
a.(Intercept)  1.872e+06  1.383e+04   135.4   <2e-16 ***
b.log(X)      -1.265e+00  1.455e-03  -869.5   <2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 114.1 on 13792 degrees of freedom
Number of iterations to termination: 11
Reason for termination: Relative error in the sum of squares is at most `ftol'.

で、相関分析をする。

Pearson's product-moment correlation

data: 予測データ2 and 実績データ
t = 1407.4, df = 13792, p-value < 2.2e-16
alternative hypothesis: true correlation is not equal to 0
95 percent confidence interval:
0.9964194 0.9966502
sample estimates:
cor
0.9965367

 わずかながら改善したので、式としては

Y = 187169 * X ^(-1.265368)

を血と汗と涙のFSR抵抗値→グラム変換式として採用することにする。(続)