タグ付けされた質問 「lm」

lmは、統計パッケージRの線形モデル(つまり、重回帰)関数の名前です。一般的に線形モデルの場合は、代わりに `linear-model`タグを使用します。



2
Rの半正弦波モデルに適したものを見つける方法は?
バルト海の海面温度は毎年同じであると仮定し、関数/線形モデルで説明します。私が考えていたのは、年を10進数(またはnum_months / 12)として入力し、その時間についての温度を取得することでした。Rのlm()関数にそれを投げると、正弦データを認識しないため、直線を生成します。そこで、sin()関数をI()ブラケットに入れて、いくつかの値を試して関数を手動でフィットさせました。しかし、海は夏には早く暖まり、秋にはゆっくりと冷却します...ですから、最初の年はモデルが間違っていて、数年後にはより正確になり、将来的にはより多くなると思いますそしてさらに間違っています。 モデルを推定するためにRを取得するにはどうすればよいですか?したがって、自分で数値を推測する必要はありませんか?ここで重要なのは、1年間だけでなく、毎年同じ値を生成することです。数学についてもっと知っていれば、sin()の代わりにポアソンやガウスのようなものと推測できるかもしれませんが、その方法もわかりません。良い答えに近づくための助けをいただければ幸いです。 ここに私が使用するデータと、これまでの結果を表示するコードを示します。 # SST from Bradtke et al 2010 ToY <- c(1/12,2/12,3/12,4/12,5/12,6/12,7/12,8/12,9/12,10/12,11/12,12/12,13/12,14/12,15/12,16/12,17/12,18/12,19/12,20/12,21/12,22/12,23/12,24/12,25/12,26/12,27/12,28/12,29/12,30/12,31/12,32/12,33/12,34/12,35/12,36/12,37/12,38/12,39/12,40/12,41/12,42/12,43/12,44/12,45/12,46/12,47/12,48/12) Degrees <- c(3,2,2.2,4,7.6,13,16,16.1,14,10.1,7,4.5,3,2,2.2,4,7.6,13,16,16.1,14,10.1,7,4.5,3,2,2.2,4,7.6,13,16,16.1,14,10.1,7,4.5,3,2,2.2,4,7.6,13,16,16.1,14,10.1,7,4.5) SST <- data.frame(ToY, Degrees) SSTlm <- lm(SST$Degrees ~ I(sin(pi*2.07*SST$ToY))) summary(SSTlm) plot(SST,xlim=c(0,4),ylim=c(0,17)) par(new=T) plot(data.frame(ToY=SST$ToY,Degrees=8.4418-6.9431*sin(2.07*pi*SST$ToY)),type="l",xlim=c(0,4),ylim=c(0,17))
37 r  regression  time-series  lm 

2
Rのlmで調整されたR-2乗式とは何ですか?
調整済みRの2乗のR で使用される正確な式は何lm() ですか?どうすれば解釈できますか? 調整されたr-2乗式 調整されたR-2乗を計算するためのいくつかの式が存在するようです。 ウェリーの式:1−(1−R2)(n−1)(n−v)1−(1−R2)(n−1)(n−v)1-(1-R^2)\frac{(n-1)}{(n-v)} マクネマーの式:1−(1−R2)(n−1)(n−v−1)1−(1−R2)(n−1)(n−v−1)1-(1-R^2)\frac{(n-1)}{(n-v-1)} 主の公式:1−(1−R2)(n+v−1)(n−v−1)1−(1−R2)(n+v−1)(n−v−1)1-(1-R^2)\frac{(n+v-1)}{(n-v-1)} スタインの式:1−[(n−1)(n−k−1)(n−2)(n−k−2)(n+1)n](1−R2)1−[(n−1)(n−k−1)(n−2)(n−k−2)(n+1)n](1−R2)1-\big[\frac{(n-1)}{(n-k-1)}\frac{(n-2)}{(n-k-2)}\frac{(n+1)}{n}\big](1-R^2) 教科書の説明 Fieldの教科書によると、Rを使用した統計の発見(2012、p。273)Rは、Wherryの方程式を使用します。彼は、Wherryの公式を示していません。彼は、Steinの式を(手で)使用して、モデルがどのように交差検証されるかを確認することを推奨します。 Kleiber / Zeileis、Applied Econometrics with R(2008、p。59)は、「Theilの調整済みR 2乗」であると主張し、その解釈が複数のR 2乗からどのように変化するかを正確に述べていません。 Dalgaard、Introductory Statistics with R(2008、p。113)は、「[調整されたRの2乗]を100%掛けると、「%分散の減少」と解釈できる」と書いています。彼は、これがどの式に対応するかについては述べていません。 私は以前、R乗がモデルに追加の変数を追加するとペナルティを与えると考え、広く読んでいました。現在、これらの異なる式の使用は、異なる解釈を必要とするようです。また、スタックオーバーフロー(単一変量最小二乗回帰における複数R 2乗と調整R 2乗の違いは何ですか?)、およびUPennにあるウォートンスクールの統計辞書に関する関連する質問も調べました。 ご質問 Rによって調整されたr平方に使用される式はどれ lm()ですか? どうすれば解釈できますか?


2
最小二乗回帰の段階的な線形代数計算
Rの線形混合モデルに関する質問の前編として、および初心者/中級の統計愛好家の参考として共有するために、独立した「Q&Aスタイル」として、単純な線形回帰の係数と予測値。 この例は、Rの組み込みデータセットをmtcars使用しており、独立変数として機能する車両が消費するガロンあたりのマイル数として設定され、車の重量(連続変数)に対して回帰し、シリンダー数を相互作用のない3つのレベル(4、6、または8)の係数。 編集:あなたがこの質問に興味があるなら、あなたは間違いなくCVの外のマシュー・ドゥルリーによるこの投稿で詳細で満足のいく答えを見つけるでしょう。

4
異分散性に対処する最良の方法は?
不均一分散性が非常に明確な、近似値の関数での線形モデルの残差値のプロットがあります。しかし、この不均一分散性が私の線形モデルを無効にすることを理解している限り、今どのように進めるべきかはわかりません。(そうですか?) パッケージのrlm()関数を使用した堅牢な線形フィッティングを使用するのは、MASS不均一分散性に対して明らかに堅牢であるためです。 係数の標準誤差は不均一分散のために間違っているので、標準誤差を不均一分散に対してロバストになるように調整できますか?ここでスタックオーバーフローに投稿された方法を使用:ヘテロスケダスティクスによる回帰標準エラーを修正 私の問題に対処するために使用する最良の方法はどれですか?ソリューション2を使用すると、モデルの予測機能はまったく役に立ちませんか? Breusch-Pagan検定では、分散が一定ではないことが確認されました。 近似値の関数における私の残差は次のようになります。 (拡大版)

1
R:線形モデルの残差の正規性のテスト-使用する残差
線形モデルの残差に対してShapiro WilkのW検定とKolmogorov-Smirnov検定を実行して、正規性を確認したいと思います。私はこれにどの残差を使用すべきかと思っていました-生の残差、ピアソンの残差、スチューデント化された残差、または標準化された残差?Shapiro-WilkのW検定の場合、生およびピアソンの残差の結果は同一であるように見えますが、他の結果はそうではありません。 fit=lm(mpg ~ 1 + hp + wt, data=mtcars) res1=residuals(fit,type="response") res2=residuals(fit,type="pearson") res3=rstudent(fit) res4=rstandard(fit) shapiro.test(res1) # W = 0.9279, p-value = 0.03427 shapiro.test(res2) # W = 0.9279, p-value = 0.03427 shapiro.test(res3) # W = 0.9058, p-value = 0.008722 shapiro.test(res4) # W = 0.9205, p-value = 0.02143 KSについても同じ質問です。また、次のように残差を正規分布(pnorm)に対してテストする必要があるかどうか ks.test(res1, "pnorm") # …

1
なぜRのlm()は私の教科書とは異なる係数推定値を返すのですか?
バックグラウンド モデルのフィッティングのコースの最初の例を理解しようとしています(これはばかげて単純に見えるかもしれません)。私は手作業で計算を行っており、例と一致していますが、Rでそれらを繰り返すと、モデル係数はオフになります。Rは標本分散()を使用しているのに対し、母分散()を使用している教科書に違いがあるのではないかと考えましたが、これらが計算でどこで使用されているかわかりません。たとえば、どこかで使用している場合 、メモに関するヘルプセクション:σ2σ2\sigma^2S2S2S^2lm()var()var() 分母n-1が使用され、iid観測の(共)分散の不偏推定量が得られます。 私は両方のコードを見てlm()おりlm.fit()、どちらも使用していませんが、そのデータをコンパイルされたCコード()に渡しますがvar()、アクセスできません。lm.fit()z <- .Call(C_Cdqrls, x, y, tol, FALSE) 質問 Rが異なる結果を出している理由を誰でも説明できますか?サンプルの使用と母集団の分散に違いがある場合でも、係数の推定値が異なるのはなぜですか? データ 学校の成績から靴のサイズを予測するために線を合わせます。 # model data mod.dat <- read.table( text = 'grade shoe 1 1 2 5 4 9' , header = T); # mean mod.mu <- mean(mod.dat$shoe); # variability mod.var <- sum((mod.dat$shoe - mod.mu)^2) # model coefficients …
13 r  regression  self-study  lm 

1
繰り返し測定anova:lmとlmer
私は両方lmとの間でlmer繰り返しの測定(2x2x2)でいくつかの相互作用テストを再現しようとしています。両方の方法を比較したいのは、繰り返し測定のSPSSのGLMがlmここに示したアプローチとまったく同じ結果をもたらすため、最後にSPSSとR-lmerを比較したいためです。これまでのところ、私はこれらの相互作用の一部を(密接に)再現することしかできませんでした。 私のポイントをよりよく説明するためのスクリプトを以下に示します。 library(data.table) library(tidyr) library(lmerTest) library(MASS) set.seed(1) N <- 100 # number of subjects sigma <- 1 # popuplation sd rho <- .6 # correlation between variables # X1: a a a a b b b b # X2: a a b b a a b b # X3: a …

2
堅牢な回帰推論とサンドイッチ推定量
ロバストな回帰推論を実行するためのサンドイッチ推定量の使用例を教えてもらえますか? の例を見ることができますが、関数から返された分散共分散行列を使用して回帰モデルから得られた(rコード化)から推定およびp値に?sandwichどのように移行できるかがよくわかりません。 lm(a ~ b, data)sandwich
10 r  regression  lm  sandwich 

1
単純なR lmモデルから対数尤度を再計算する
私は単純にdnorm()を使用して、lmモデル(R)からのlogLik関数によって提供される対数尤度を再計算しようとしています。 大量のデータ(n = 1000など)でも(ほぼ完全に)機能します。 > n <- 1000 > x <- 1:n > set.seed(1) > y <- 10 + 2*x + rnorm(n, 0, 2) > mod <- glm(y ~ x, family = gaussian) > logLik(mod) 'log Lik.' -2145.562 (df=3) > sigma <- sqrt(summary(mod)$dispersion) > sum(log(dnorm(x = y, mean = predict(mod), …

1
Anova()とdrop1()がGLMMに異なる回答を提供したのはなぜですか?
次の形式のGLMMがあります。 lmer(present? ~ factor1 + factor2 + continuous + factor1*continuous + (1 | factor3), family=binomial) 私が使用している場合drop1(model, test="Chi")、私は私が使用している場合とは異なる結果を得るAnova(model, type="III")車のパッケージからかsummary(model)。後者の2つは同じ答えを与えます。 大量の偽造データを使用して、これらの2つの方法は通常違いがないことがわかりました。それらは、平衡線形モデル、不平衡線形モデル(異なるグループでnが等しくない場合)、および平衡一般化線形モデルに対して同じ答えを示しますが、平衡一般化線形混合モデルに対しては同じ答えを与えません。したがって、ランダムな要素が含まれている場合にのみ、この不一致が現れます。 これらの2つの方法の間に違いがあるのはなぜですか? GLMMを使用する場合は必要がありますAnova()かdrop1()使用できますか? これらの2つの違いは、少なくとも私のデータでは、かなりわずかです。どちらを使用するかは問題ですか?
10 r  anova  glmm  r  mixed-model  bootstrap  sample-size  cross-validation  roc  auc  sampling  stratification  random-allocation  logistic  stata  interpretation  proportion  r  regression  multiple-regression  linear-model  lm  r  cross-validation  cart  rpart  logistic  generalized-linear-model  econometrics  experiment-design  causality  instrumental-variables  random-allocation  predictive-models  data-mining  estimation  contingency-tables  epidemiology  standard-deviation  mean  ancova  psychology  statistical-significance  cross-validation  synthetic-data  poisson-distribution  negative-binomial  bioinformatics  sequence-analysis  distributions  binomial  classification  k-means  distance  unsupervised-learning  euclidean  correlation  chi-squared  spearman-rho  forecasting  excel  exponential-smoothing  binomial  sample-size  r  change-point  wilcoxon-signed-rank  ranks  clustering  matlab  covariance  covariance-matrix  normal-distribution  simulation  random-generation  bivariate  standardization  confounding  z-statistic  forecasting  arima  minitab  poisson-distribution  negative-binomial  poisson-regression  overdispersion  probability  self-study  markov-process  estimation  maximum-likelihood  classification  pca  group-differences  chi-squared  survival  missing-data  contingency-tables  anova  proportion 

3
線形回帰が単純な決定論的シーケンスの結果を予測できないのはなぜですか?
私の同僚が私にこの問題を送って、どうやらインターネット上でラウンドを行っているようです: If $3 = 18, 4 = 32, 5 = 50, 6 = 72, 7 = 98$, Then, $10 =$ ? 答えは200のようです。 3*6 4*8 5*10 6*12 7*14 8*16 9*18 10*20=200 Rで線形回帰を行う場合: data <- data.frame(a=c(3,4,5,6,7), b=c(18,32,50,72,98)) lm1 <- lm(b~a, data=data) new.data <- data.frame(a=c(10,20,30)) predict <- predict(lm1, newdata=new.data, interval='prediction') 私は得ます: fit lwr …
9 r  regression  lm 

2
混合モデルのパラメトリック、セミパラメトリック、ノンパラメトリックブートストラップ
以下の移植片は、この記事から引用したものです。私はブートストラップの初心者であり、R bootパッケージを使用した線形混合モデルのパラメトリック、セミパラメトリック、ノンパラメトリックのブートストラップブートストラップを実装しようとしています。 Rコード これが私のRコードです: library(SASmixed) library(lme4) library(boot) fm1Cult <- lmer(drywt ~ Inoc + Cult + (1|Block) + (1|Cult), data=Cultivation) fixef(fm1Cult) boot.fn <- function(data, indices){ data <- data[indices, ] mod <- lmer(drywt ~ Inoc + Cult + (1|Block) + (1|Cult), data=data) fixef(mod) } set.seed(12345) Out <- boot(data=Cultivation, statistic=boot.fn, R=99) Out ご質問 …
9 r  mixed-model  bootstrap  central-limit-theorem  stable-distribution  time-series  hypothesis-testing  markov-process  r  correlation  categorical-data  association-measure  meta-analysis  r  anova  confidence-interval  lm  r  bayesian  multilevel-analysis  logit  regression  logistic  least-squares  eda  regression  notation  distributions  random-variable  expected-value  distributions  markov-process  hidden-markov-model  r  variance  group-differences  microarray  r  descriptive-statistics  machine-learning  references  r  regression  r  categorical-data  random-forest  data-transformation  data-visualization  interactive-visualization  binomial  beta-distribution  time-series  forecasting  logistic  arima  beta-regression  r  time-series  seasonality  large-data  unevenly-spaced-time-series  correlation  statistical-significance  normalization  population  group-differences  demography 

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.