2012-02-16 11 views
1
library(splines) 
x <- runif(100000) 
spline <- ns(x, df=5) 

매듭이이 척추 객체의 어디에 있는지 어떻게 알 수 있습니까?ns 객체에서 매듭을 추출합니다.

> spline ['knots'] 
[1] NA 

str는 내가 필요로하는 무엇을 나에게 가까이 가져,하지만 난 스플라인의 벡터 형식으로 추출 할 수 있기를, 그리고 Sweave 문서를 인쇄 할 것입니다.

> str(sp) 
ns [1:117542, 1:5] 0.527 0.474 0.455 0.472 0.498 ... 
- attr(*, "dimnames")=List of 2 
    ..$ : NULL 
    ..$ : chr [1:5] "1" "2" "3" "4" ... 
- attr(*, "degree")= num 3 
- attr(*, "knots")= Named num [1:4] 1.03 1.55 1.99 2.7 
    ..- attr(*, "names")= chr [1:4] "20%" "40%" "60%" "80%" 
- attr(*, "Boundary.knots")= num [1:2] 0.0214 4.9999 
- attr(*, "intercept")= logi FALSE 
- attr(*, "class")= chr [1:3] "ns" "basis" "matrix" 

답변

6

음,이 같은 확실히 물건을 추출 할 수 있습니다 :

> attr(spline, "knots") 
     20%  40%  60%  80% 
0.1966951 0.3973261 0.5982386 0.7993613 
+0

감사합니다. 저는'spline $ knots','spline @ knots','spline ['knots ']','spline [['knots ']]를 시도했습니다. 'attr'에 대해 잊어 버렸습니다 ... – Zach

+1

@Zach, attrs의 사용은 str() 출력에서 ​​꽤 분명합니다. 그래서 brute-force는하지 말고 출력을 살펴보십시오. –

+0

@ Anton - 이전에'attr()'함수를 만나지 않았기 때문에'str'이 무엇인지 알지 못했습니다. 말하고있어. – Zach