On 2010-07-06 1:13, McLovin wrote:

Hi,

I am very new to R.  I am hoping to create formulas and assign them to
locations within an array (or matrix, if it will work).

Here's a simplified example of what I'm trying to do:

form.arr<- array(31,5,3)
for (i in seq(from=1, to=31, by=1)) {
        for (j in seq(from=1, to=5, by=1)) {
                form.arr[i,j,]<- as.formula(y~1+2)
        }
}

which results in this error:
Error in form.arr[i, j, ]<- as.formula(y ~ 1 + 2) :
   incorrect number of subscripts

The reason I had made the 3rd dimension of the array size 3 is because
that's the length R tells me that formula is.

When I had tried to do this using a matrix, using this code:

form.mat<- matrix(31,5,3)
for (i in seq(from=1, to=31, by=1)) {
        for (j in seq(from=1, to=5, by=1)) {
                form.mat[i,j] = as.formula(y~1+2)
        }
}

I was told:

Error in form.mat[i, j] = as.formula(y ~ 1 + 2) :
   number of items to replace is not a multiple of replacement length

My question is: is it possible to assign formulas within a matrix or array?
If so, how?  thanks....@real.com

I don't think it's possible in the way you're trying
to do it. A formula is not the same thing as a 3-element
vector.

Why not use a list?

ps. for (i in seq(from=1, to=31, by=1)) is equivalent
    to for(i in seq_len(31))

  -Peter Ehlers

______________________________________________
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.

Reply via email to