Hi all: I have a question about lm on t-test. data(sleep) I wanna perform t-test to test the difference between the 2 groups: I can use: t.test(extra~group) The t.test result shows that:t = -1.8608; mean1=0.75,mean2=2.33 But I still wanna use: summary(lm(extra~group)) Intercept=0.75,which is mean1,just the same as t.test. group2=1.58 means the difference of the 2 groups,so mean2=1.58+0.75=2.33,just the same as t.test. And some parameters of group2(t value,Pr) are the same as t.test,since group2 is the difference of the 2 groups. My question is: How the "t value" of Intercept(group1 acturally) is calculated? Thanks a lot. My best [[alternative HTML version deleted]]
Why would you assert that the mean is the same as the intercept? For data clustered far from the y axis this seems clearly unlikely to be true. --------------------------------------------------------------------------- Jeff Newmiller The ..... ..... Go Live... DCN:<jdnewmil@dcn.davis.ca.us> Basics: ##.#. ##.#. Live Go... Live: OO#.. Dead: OO#.. Playing Research Engineer (Solar/Batteries O.O#. #.O#. with /Software/Embedded Controllers) .OO#. .OO#. rocks...1k --------------------------------------------------------------------------- Sent from my phone. Please excuse my brevity. Lao Meng <laomeng.3@gmail.com> wrote: Hi all: I have a question about lm on t-test. data(sleep) I wanna perform t-test to test the difference between the 2 groups: I can use: t.test(extra~group) The t.test result shows that:t = -1.8608; mean1=0.75,mean2=2.33 But I still wanna use: summary(lm(extra~group)) Intercept=0.75,which is mean1,just the same as t.test. group2=1.58 means the difference of the 2 groups,so mean2=1.58+0.75=2.33,just the same as t.test. And some parameters of group2(t value,Pr) are the same as t.test,since group2 is the difference of the 2 groups. My question is: How the "t value" of Intercept(group1 acturally) is calculated? Thanks a lot. My best [[alternative HTML version deleted]] _____________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code. [[alternative HTML version deleted]]
Hi, you may have noticed, that your t-test and lm had not the same p-values for the difference in means, which is calculated for group2 when you use treatment contrasts and that is what R does by default (see ?contr.treatment). This is because R uses Welsh test by default. Pros and cons are beyond this post, but look at (t1<-t.test(extra~group,data=sleep,var.equal=T)) (s1<-summary(lm(extra~group,data=sleep))) all.equal(s1$coef["group2","Pr(>|t|)"],t1$p.value) The intercept in lm is tested against 0 (one sample t-test), so the t-statistic is (mean-0)/sd, having n-k (sample size - number of parameters) degrees of freedom. cc<-s1$coef["(Intercept)",1:2] 2*(1-pt(cc[1]/cc[2],df=18)) hth. Am 16.08.2011 07:25, schrieb Lao Meng:> Hi all: > I have a question about lm on t-test. > > data(sleep) > > I wanna perform t-test to test the difference between the 2 groups: > > I can use: > t.test(extra~group) > > The t.test result shows that:t = -1.8608; mean1=0.75,mean2=2.33 > > > But I still wanna use: > summary(lm(extra~group)) > > Intercept=0.75,which is mean1,just the same as t.test. > group2=1.58 means the difference of the 2 groups,so > mean2=1.58+0.75=2.33,just the same as t.test. > And some parameters of group2(t value,Pr) are the same as t.test,since > group2 is the difference of the 2 groups. > > My question is: > How the "t value" of Intercept(group1 acturally) is calculated? > > > Thanks a lot. > > My best > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help at r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code.-- Eik Vettorazzi Institut f?r Medizinische Biometrie und Epidemiologie Universit?tsklinikum Hamburg-Eppendorf Martinistr. 52 20246 Hamburg T ++49/40/7410-58243 F ++49/40/7410-57790
Pick up a book or the like on ordinary least squares regression, which is what lm() in its plain vanilla application does. The t-value is the estimated coefficient divided by the standard error. The standard errors of the coefficients are the diagonal entries of the variance-covariance matrix. x<-rnorm(100) y<-2+x+rnorm(100) reg<-lm(y~x) summary(reg)$coefficients sqrt(diag(vcov(reg))) See also: http://en.wikipedia.org/wiki/Ordinary_least_squares HTH, Daniel Lao Meng wrote:> > Hi all: > I have a question about lm on t-test. > > data(sleep) > > I wanna perform t-test to test the difference between the 2 groups: > > I can use: > t.test(extra~group) > > The t.test result shows that:t = -1.8608; mean1=0.75,mean2=2.33 > > > But I still wanna use: > summary(lm(extra~group)) > > Intercept=0.75,which is mean1,just the same as t.test. > group2=1.58 means the difference of the 2 groups,so > mean2=1.58+0.75=2.33,just the same as t.test. > And some parameters of group2(t value,Pr) are the same as t.test,since > group2 is the difference of the 2 groups. > > My question is: > How the "t value" of Intercept(group1 acturally) is calculated? > > > Thanks a lot. > > My best > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help at r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide > http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. >-- View this message in context: http://r.789695.n4.nabble.com/a-question-about-lm-on-t-test-tp3746371p3752025.html Sent from the R help mailing list archive at Nabble.com.
I should have written "the standard errors of the coefficients are the SQUARE ROOT of the diagonal entries of the variance-covariance matrix," as I programmed it in the code. Daniel Malter wrote:> > Pick up a book or the like on ordinary least squares regression, which is > what lm() in its plain vanilla application does. The t-value is the > estimated coefficient divided by the standard error. The standard errors > of the coefficients are the diagonal entries of the variance-covariance > matrix. > > x<-rnorm(100) > y<-2+x+rnorm(100) > reg<-lm(y~x) > summary(reg)$coefficients > sqrt(diag(vcov(reg))) > > See also: http://en.wikipedia.org/wiki/Ordinary_least_squares > > HTH, > Daniel > > > Lao Meng wrote: >> >> Hi all: >> I have a question about lm on t-test. >> >> data(sleep) >> >> I wanna perform t-test to test the difference between the 2 groups: >> >> I can use: >> t.test(extra~group) >> >> The t.test result shows that:t = -1.8608; mean1=0.75,mean2=2.33 >> >> >> But I still wanna use: >> summary(lm(extra~group)) >> >> Intercept=0.75,which is mean1,just the same as t.test. >> group2=1.58 means the difference of the 2 groups,so >> mean2=1.58+0.75=2.33,just the same as t.test. >> And some parameters of group2(t value,Pr) are the same as t.test,since >> group2 is the difference of the 2 groups. >> >> My question is: >> How the "t value" of Intercept(group1 acturally) is calculated? >> >> >> Thanks a lot. >> >> My best >> >> [[alternative HTML version deleted]] >> >> ______________________________________________ >> R-help at r-project.org mailing list >> https://stat.ethz.ch/mailman/listinfo/r-help >> PLEASE do read the posting guide >> http://www.R-project.org/posting-guide.html >> and provide commented, minimal, self-contained, reproducible code. >> >-- View this message in context: http://r.789695.n4.nabble.com/a-question-about-lm-on-t-test-tp3746371p3752068.html Sent from the R help mailing list archive at Nabble.com.