[R] sem error message

Sarah Goslee sarah.goslee at gmail.com
Fri May 4 19:05:42 CEST 2012


Hi,

You did a really good job providing a reproducible example, except
that you didn't mention which package sem() comes from. (sem, I'm
assuming).

I don't know how you came up with your covariance matrix, but it
*isn't* symmetric:

> isSymmetric(S.Seed.BB)
[1] FALSE
> S.Seed.BB[6, 2]
[1] 37.758
> S.Seed.BB[2, 6]
[1] 37.759

Sarah

On Fri, May 4, 2012 at 10:36 AM, Vero Chillo <vchillo at gmail.com> wrote:
> Hello, I tried to do a 'sem' analysis for data of how blueberry consumption
> by birds is influenced by a pollution gradient, using distance and
> vegetation structural and composition variables, but I got the following
> error message:
>
> Error in sem.default(ram = ram, S = S, N = N, param.names = pars, var.names
> = vars,  :
>  S must be a square triangular or symmetric matrix
>
> This may be very obvious for R specialist, but I cant find the problem!
>
> #Symbolic ram model
> mod.BB.1 <- specify.model()
> BB.Cob -> B.B, lamb1, NA
> Under.Cob -> B.B, lamb2, NA
> BA -> B.B, lamb3, NA
> Over.Comp -> B.B, lamb4, NA
> Under.Comp -> B.B, lamb5, NA
> Site -> B.B, lamb6, NA
> Site -> BB.Cob, lamb7, NA
> Site -> BA, lamb8, NA
> Site -> Under.Cob, lamb9, NA
> Site -> Under.Comp, lamb10, NA
> Site -> Under.Comp, lamb11, NA
> Under.Comp <-> Over.Comp, beta1, NA
> Under.Cob <-> BA, beta2, NA
> BB.Cob <-> BB.Cob, beta3, NA
> Under.Cob <-> Under.Cob, beta4, NA
> BA <-> BA, beta5, NA
> Under.Comp <-> Under.Comp, beta6, NA
> Over.Comp <-> Over.Comp, beta7, NA
> B.B <-> B.B, beta8, NA
> Site <-> Site, NA, 1
>
> #S matrix
> S.Seed.BB <- matrix(c(
> 2.243,  3.055,  1.657,  -2.166,  12.424,  27.105,  2.205,
> 3.055, 41.942,  2.079,  -2.392,  15.390,  37.759,  0.565,
> 1.657,  2.079,  1.396,  -1.655,   9.960,  15.360,  -1.238,
> -2.166, -2.392, -1.655,   2.164, -12.328, -25.099,  -1.791,
> 12.424, 15.390,  9.960, -12.328,  72.492, 129.491,  -0.004,
> 27.105, 37.758, 15.360, -25.099, 129.491, 456.913,  108.861,
> 2.205,  0.565, -1.238,  -1.791,  -0.004, 108.861,  56.239),7,7,byrow=TRUE)
> rownames(S.Seed.BB) <- colnames(S.Seed.BB) <-
> c('Site','B.B','Over.Comp','Under.Comp','BA','Under.Cob', 'BB.Cob')
>
> #sem function
> sem.BB.1 <- sem(mod.BB.1, S.Seed.BB, N=40)
>
> Thanks a lot for any suggestions!
>

-- 
Sarah Goslee
http://www.functionaldiversity.org



More information about the R-help mailing list