理学療法士がまとめたノート

統計学備忘録(R言語のメモ)

since2016 ときどきTEXのメモ

回帰分析

回帰直線と交互作用

パッケージ無しで描く方法 dat <- data.frame(y=c(1,2,3,4), x=c(4,5,8,12), a=c(1,1,0,0)) dat$a <- as.factor(dat$a) plot(dat$x, dat$y) fit <- summary(lm(y~x, data=dat)) lines(range(dat$x), fit$coef[1]+ fit$coef[2]*range(dat$x)) pchAB <- ifelse…

共分散分析 ANCOVA

サンプル(勝手に作ったサンプルです。実存しません。) 治療Aと治療Bの降圧効果に関する検証 治療 <- c("B","A","B","A","A","B","B","A","A","B","A","B","B","B","A","B", "B","B","A","A") 治療前BP <- c(160,135,177,141,142,155,175,145,149,155,135,1…

混合モデル(マルチレベルモデル)の基礎

投稿日:2021.5.2 忘れないように基本的な部分のみ貼っておきますが、名称だけでも統一していただきたいです・・・ 線形混合モデル () 線形混合効果モデル () 階層線形モデル () マルチレベルモデル ()・・・etc サンプルはパッケージlme4の「cbpp」を使用し…

ロジスティック回帰の基準(reference) 変更

ロジスティック解析を行うときには、オッズとオッズ比の基準 (reference) が非常に重要になります.特に日本語での記述の場合には、解析を行う前に基準を設定することをお勧めします. df <- data.frame(c(rep("あり",15),rep("なし",15)), c(rep("有効",12)…

回帰分析の結果の解釈

単回帰分析 dat <- LifeCycleSavings # sr(個人貯蓄の合計), pop15(15歳未満の人口の数値%), pop75(75歳未満の人口の数値%), dpi(可処分所得、自由に使える収入), ddpi(dpiの成長率) reg1 <- lm(sr ~ pop15, data=dat) summary(reg1) 次のような結果が出力…

ロジスティック回帰分析の基礎

投稿日:2018.2.13 最終更新日:2020.07.26 説明変数がが単一かつ連続変数の場合 ロジット関数 (標準)ロジスティック関数ロジット関数の逆関数= サンプルirisより 品種"virginica=1"、"別の品種=0"という2値を目的変数、”Sepal.Length(がく片の長さ)(cm)”を…

感度と偽陽性 ( 単回帰分析より )

X <- c(rep(0,70), rep(1,75)) #検査結果 0=陰性、1=陽性 Y <- c(rep(0, 45),rep(1, 25), rep(0, 8), rep(1, 67)) #罹患 0=無し、1=あり (b <- xtabs(~Y + X)) X Y 0 1 0 45 8 1 25 67 上記分割表より 感度 P(Y=1, X=1):67/(25+67) = 0.7282609 1-特異度 P…

単回帰 β1の推定値とp値のみ(図あり)

func <- function(Y, X){ fit <- lm(Y~X) plot(X, Y) lines(range(X),fit$coef[1] + fit$coef[2]*range(X)) z <- summary(fit) return(c(z$coef[2,1], z$coef[2,4])) } # YとXに該当する変数を挿入 func(Y, X)

単回帰分析を一括で実行する方法

tokei.net 全人類が分かる統計学より to-kei.net 上記サイトに自分なりの注釈をつけました。 sampleもまったく同じです。 番号 <- c(1:30) 年齢 <- c(22,23,24,25,27,28,28,29,30,31,32,32,33,33,34,36,37,37,38,39,40,42,46,49,50,53,56,58,64,65) 血圧 <- …

エラーバー付きのグラフ ggplot2

更新日2020.3.13 使用するパッケージ install.packages("ggplot2") install.packages("ggsignif") データセットを作成します dat <- c(-0.29733004,-2.63812280,-0.90097072,1.06843016,-3.03846846,2.14097694,2.47494865,-0.02154341,0.56411223,2.8182606…

層別した散布図と回帰直線

以下のようなグラフ 忘れないように記載しておきます データサンプル Group <- c(1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3) p…

独立している2群を比較するグラフ ggplot2

データの準備 dat <- c(c(rnorm(15)),c(rnorm(15,3,1.2)),c(rnorm(15,10,2)),c(rnorm(15,17,1.5))) pre_post <- c(rep("前", 30),rep("後", 30)) treat <- c(rep("A",15),rep("B",15),rep("A",15),rep("B",15)) dataf <- data.frame(dat, pre_post, treat) h…

makedummiesを使ったダミー変数の作成 

2018-07-19投稿、最終更新日2019-07-07 下のようなカテゴリカルデータをダミー変数に変更します 治療 効果 NO NO YES YES YES NO NO YES YES YES YES YES NO YES YES NO NO NO NO YES NO NO NO NO YES YES YES YES YES YES YES NO NO NO NO NO YES YES NO NO…

共分散分析を考えるためのグラフ

いつも勉強させていただいおります、下記サイトの共分散分析より グラフの描き方の備忘録です 我楽多頓陳館--雑学と統計学の館 以下のようなグラフになります データのサンプルは上記サイトから引用してdataに入れました # まずはこれを描いて考える・・・!…

Rで簡単 多重ロジスティック回帰分析

サンプルはRのmtcarsを使用します.車に詳しくないので回帰分析に相応しいサンプルか分かりませんが、学習のため数値のみ使用させていただきます. サンプルから直接取り込み dat <- mtcars[,c(8,2,5,6)] #ここがポイント8列目を応答変数として、2列目・5列目…

決定係数(寄与率)

決定係数 回帰係数がどの程度よく当てはまっているか、つまりXがYをうまく説明できているか、ということを明らかにすることは重要になります.決定係数は、その当てはまりを示す基準としてして使用されています. 観測値の平方和(全変動) 回帰による平方和…

単回帰分析

投稿日2017.2.2 更新日2017.11.13 説明変数と目的変数との関係を直線でモデル化する回帰分析。 Xi <- c(35, 45, 55, 65, 75) Yi <- c(114, 124, 143, 158, 166) plot(Xi, Yi, pch = 16) abline(lm(Yi~Xi), col = 2) どのようにして赤のラインを引いたのか?…

標準偏回帰係数の求め方

標準偏回帰係数の求め方 投稿日2017.8.12 更新日2017.8.13 忘れないように載せておきます 例)予測変数が二つの場合の重回帰分析 母回帰方程式 Y = b0 + b1*X1i + b2*X2i + Ei 予測方程式 y = β0 + β1*x1i + β2*x2i +ei 標準偏回帰係数 sβ1、sβ2 sβ1 = ( yと…

トービット回帰直線

トービット回帰直線 投稿日2017.8.4 打ち切りデータの場合、つまり天井効果や床効果が生じているデータの場合には、トービット回帰直線で分析します. 参考書はもちろん豊田秀樹 (著, 編集);回帰分析入門 (Rで学ぶ最新データ解析) ,東京図書 ,2012 Rのサンプ…

残差分析

残差分析 Rのサンプル ChickWeight を使用y<-ChickWeight$weight[1:10]x<-ChickWeight$Time[1:10]summary(lm(y~x))plot(x,y,xlab = "生後日数",ylab = "体重")abline(30.327 ,7.030) #回帰直線の挿入 残差 ei をプロットすることで、回帰モデルからのズレを…

回帰係数の区間推定

投稿日2017.2.3更新日2017.7.31 回帰係数の区間推定 標本回帰係数の不偏推定量から母回帰係数の信頼区間を求めてみます. 次式をRにペーストしてx<-read.table("clipboard",header=T) 次のデータをコピーしてRで実行します東京 福岡1019.4 1018.41005.7 1007…

Rで簡単(重回帰分析)

Rのデータセットtrees を使用して説明します Girth=y , Height=x1 , Volume=x2 次のようにエクセルに準備します x<-read.table("clipboard",header=T) をコピーしてR Consoleにペーストします 分析したい一覧表をコピー(上記の表など) x<-read.table("clip…