Hallo,
I want to use gam from the mgcv package with a mrf smoother.
This is my data set (`x`)
?????? y????????? id
??? 1? 0.6684496? 1
??? 2? 0.6684496? 2
??? 3? 0.6684496? 3
??? 4? 0.6684496? 4
??? 5? 0.6684496? 5
??? 6? 0.6684496? 6
??? 7? 0.6684496? 7
??? 8? 0.5879492? 8
??? 9? 0.5879492? 9
??? 10 0.5879492 10
??? 11 0.5879492 11
??? 12 0.5879492 12
??? 13 0.5879492 13
??? 14 0.5879492 14
??? 15 0.6445448 15
??? 16 0.6445448 16
??? 17 0.6445448 17
??? 18 0.6445448 18
??? 19 0.6445448 19
??? 20 0.6445448 20
??? 21 0.6445448 21
??? 22 0.5815767 22
??? 23 0.5815767 23
??? 24 0.5815767 24
??? 25 0.5815767 25
??? 26 0.5815767 26
??? 27 0.5815767 27
??? 28 0.5815767 28
??? 29 0.6636673 29
??? 30 0.6636673 30
??? 31 0.6636673 31
??? 32 0.6636673 32
??? 33 0.6636673 33
??? 34 0.6636673 34
??? 35 0.6636673 35
??? 36 0.4249320 36
??? 37 0.4249320 37
??? 38 0.4249320 38
??? 39 0.4249320 39
??? 40 0.4249320 40
??? 41 0.4249320 41
??? 42 0.4249320 42
and this is my neighbouring structure (nb)
??? $`1`
??? [1] 1 2 3 4 5 6 7
??? $`2`
??? [1] 1 2 3 4 5 6 7
??? $`3`
??? [1] 1 2 3 4 5 6 7
??? $`4`
??? [1] 1 2 3 4 5 6 7
??? $`5`
??? [1] 1 2 3 4 5 6 7
??? $`6`
??? [1] 1 2 3 4 5 6 7
??? $`7`
??? [1] 1 2 3 4 5 6 7
??? $`8`
??? [1]? 8? 9 10 11 12 13 14
??? $`9`
??? [1]? 8? 9 10 11 12 13 14
??? $`10`
??? [1]? 8? 9 10 11 12 13 14
??? $`11`
??? [1]? 8? 9 10 11 12 13 14
??? $`12`
??? [1]? 8? 9 10 11 12 13 14
??? $`13`
??? [1]? 8? 9 10 11 12 13 14
??? $`14`
??? [1]? 8? 9 10 11 12 13 14
??? $`15`
??? [1] 15 16 17 18 19 20 21
??? $`16`
??? [1] 15 16 17 18 19 20 21
??? $`17`
??? [1] 15 16 17 18 19 20 21
??? $`18`
??? [1] 15 16 17 18 19 20 21
??? $`19`
??? [1] 15 16 17 18 19 20 21
??? $`20`
??? [1] 15 16 17 18 19 20 21
??? $`21`
??? [1] 15 16 17 18 19 20 21
??? $`22`
??? [1] 22 23 24 25 26 27 28
??? $`23`
??? [1] 22 23 24 25 26 27 28
??? $`24`
??? [1] 22 23 24 25 26 27 28
??? $`25`
??? [1] 22 23 24 25 26 27 28
??? $`26`
??? [1] 22 23 24 25 26 27 28
??? $`27`
??? [1] 22 23 24 25 26 27 28
??? $`28`
??? [1] 22 23 24 25 26 27 28
??? $`29`
??? [1] 29 30 31 32 33 34 35
??? $`30`
??? [1] 29 30 31 32 33 34 35
??? $`31`
??? [1] 29 30 31 32 33 34 35
??? $`32`
??? [1] 29 30 31 32 33 34 35
??? $`33`
??? [1] 29 30 31 32 33 34 35
??? $`34`
??? [1] 29 30 31 32 33 34 35
??? $`35`
??? [1] 29 30 31 32 33 34 35
??? $`36`
??? [1] 36 37 38 39 40 41 42
??? $`37`
??? [1] 36 37 38 39 40 41 42
??? $`38`
??? [1] 36 37 38 39 40 41 42
??? $`39`
??? [1] 36 37 38 39 40 41 42
??? $`40`
??? [1] 36 37 38 39 40 41 42
??? $`41`
??? [1] 36 37 38 39 40 41 42
??? $`42`
??? [1] 36 37 38 39 40 41 42
However, when I run
??? b <- gam(y ~
s(id,bs="mrf",xt=list(nb=nb)),data=x,method="REML")
I get the following error:
Error in initial.sp(w * x, S, off) : S[[1]] matrix is not +ve definite.
Why is the penalty matrix non semi-positive definite? Am I defining
something wrong?
Many thanks in advance