Re: [R] lme error: Error in getGroups.data.frame(dataMix, groups)

From: Dennis Murphy <djmuser_at_gmail.com>
Date: Mon, 28 Feb 2011 13:08:22 -0800

Hi:

On Mon, Feb 28, 2011 at 8:42 AM, John Sorkin <jsorkin_at_grecc.umaryland.edu>wrote:

> R 2.10.0
> Windows XP
>
> I am trying to run lme. I receive the following error message:
> My lme code is:
> fitRandom <- lme(values ~ factor(subject),
> data=withindata)
>

Where's the random factor? Perhaps you mean

lme(values ~ 1, random = ~ 1 | subject, data = withindata)

or in lme4,

lmer(values ~ 1 + (1 | subject), data = withindata)

HTH,
Dennis

PS: Use of dput() output is more helpful than copying from the console, as it retains the same classes you have on your end.

> dput(withindata)

structure(list(subject = c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 3L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L, 4L),

    values = c(2.3199639, -8.5795802, -4.1901241, 0.4588128,     16.9128232, 8.9856358, 1.9303254, -1.4320313, -15.4225123,

    5.9293529, -29.2014153, -8.9684986, -11.906217, 13.2133887,
    1.2491941, -8.0613768, -5.6340179, 3.1916857, -7.7447932,
    2.2316354, 0.6444938, 4.6912677, 20.9135073, 2.1433533, -0.8057022,
    -13.0187979, 8.9634065, 13.4815344, 4.6148061, -18.4781373,     15.5263564, -2.1993412, 5.183026, 16.2311097, -2.5781897,     -3.016729, -0.1119353, 1.1983126, -8.8212143, 3.8895263)), .Names = c("subject",
"values"), class = "data.frame", row.names = c("1", "2", "3",
"4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15",
"16", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26",
"27", "28", "29", "30", "31", "32", "33", "34", "35", "36", "37",
"38", "39", "40"))

Below I have printed the console output, and at the bottom of this message,
> I have printed my code.
> I hope someone can tell my what I am doing wrong.
> Thank you,
> John
>
> > print(withindata)
> subject values
> 1 1 2.3199639
> 2 1 -8.5795802
> 3 1 -4.1901241
> 4 1 0.4588128
> 5 1 16.9128232
> 6 1 8.9856358
> 7 1 1.9303254
> 8 1 -1.4320313
> 9 1 -15.4225123
> 10 1 5.9293529
> 11 2 -29.2014153
> 12 2 -8.9684986
> 13 2 -11.9062170
> 14 2 13.2133887
> 15 2 1.2491941
> 16 2 -8.0613768
> 17 2 -5.6340179
> 18 2 3.1916857
> 19 2 -7.7447932
> 20 2 2.2316354
> 21 3 0.6444938
> 22 3 4.6912677
> 23 3 20.9135073
> 24 3 2.1433533
> 25 3 -0.8057022
> 26 3 -13.0187979
> 27 3 8.9634065
> 28 3 13.4815344
> 29 3 4.6148061
> 30 3 -18.4781373
> 31 4 15.5263564
> 32 4 -2.1993412
> 33 4 5.1830260
> 34 4 16.2311097
> 35 4 -2.5781897
> 36 4 -3.0167290
> 37 4 -0.1119353
> 38 4 1.1983126
> 39 4 -8.8212143
> 40 4 3.8895263
> > fitRandom <- lme(values ~ factor(subject),
> + data=withindata)
> Error in getGroups.data.frame(dataMix, groups) :
> Invalid formula for groups
> > summary(fitRandom)
> Error in summary(fitRandom) : object 'fitRandom' not found
> >
>
> My code:
>
> library(nlme)
>
> # Define essential constants.
> # Number of subject studied.
> NSubs <- 4
> # Number of observations per subject.
> NObs <- 10
> # Between study SD
> tau <- 4
> # Within study SD.
> sigma <- 8
> # END Define essential constants.
>
> # Define between subject variation
> between <- matrix(nrow=10,ncol=1)
> between <- rnorm(NSubs,0,tau)
> between
> # END Define between subject variation.
>
> # Define within subject varation.
> within <- matrix(nrow=NObs*NSubs,ncol=2)
> for (subject in 1:NSubs) {
> # Create a variable defining subject.
> within[c(1:NObs)+((subject-1)*NObs),1] <- subject
> # Create within subject variation.
> within[c(1:NObs)+((subject-1)*NObs),2] <-
> rnorm(NObs,between[subject],sigma)
> }
> # END Define within subject variation.
>
> # Create a dataframe to hold values.
> withindata <- data.frame(subject=within[,1],values=within[,2])
> print(withindata[1:4,])
>
> print(withindata)
> fitRandom <- lme(values ~ subject,
> data=withindata)
> summary(fitRandom)
>
>
>
> John David Sorkin M.D., Ph.D.
> Chief, Biostatistics and Informatics
> University of Maryland School of Medicine Division of Gerontology
> Baltimore VA Medical Center
> 10 North Greene Street
> GRECC (BT/18/GR)
> Baltimore, MD 21201-1524
> (Phone) 410-605-7119
> (Fax) 410-605-7913 (Please call phone number above prior to faxing)
>
> Confidentiality Statement:
> This email message, including any attachments, is for ...{{dropped:13}}



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. Received on Mon 28 Feb 2011 - 21:11:32 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Tue 01 Mar 2011 - 00:00:17 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.

list of date sections of archive