2012-09-19 4 views
2

나는 공변량 x에 y의 조건부 밀도를 만들기 위해 np 패키지의 npcdens을 사용하고 있습니다. 그러나 y와 관련하여이 밀도 로그의 파생물이 필요합니다. 이것을 얻기 위해 R에 어떤 방법이 있습니까? x1, x2조건부 밀도의 미분을 만들기

답변

1

우리는이 예제 데이터 집합을 사용할 수에 대한 기울기를 반환

bw <- npcdensbw(formula=y ~ x1+x2+x3) 
    fhat <- npcdens(bws=bw,gradients=TRUE) 
    grad.fhat <- gradients(npcdens(bws=bw,gradients=TRUE)) 

?

dta = data.frame(expand.grid(x1=1:5,x2=2:6,x3=5:10)) 
dta$y = with(dta,x1+2*x2 + 3*x3^2) 
head(dta) 
    x1 x2 x3 y 
1 1 2 5 80 
2 2 2 5 81 
3 3 2 5 82 
4 4 2 5 83 
5 5 2 5 84 
6 1 3 5 82 

y는 "밀도"의 값입니다. 당신은 "Y에 대한 파생 상품"으로 무엇을 의미합니까 조건부 대역폭 객체를

bw <- npcdensbw(formula = y ~ x1+x2+x3,data=dta) 

을 추정하고 그라디언트

head(gradients(npcdens(bws=bw,gradients=TRUE))) 

       [,1]   [,2]   [,3] 
[1,] -2.024422e-15 -2.048994e-50 -1.227563e-294 
[2,] -1.444541e-15 -1.994174e-50 -1.604693e-294 
[3,] -1.017979e-31 -1.201719e-50 -1.743784e-294 
[4,] 1.444541e-15 -6.753912e-64 -1.604693e-294 
[5,] 2.024422e-15 1.201719e-50 -1.227563e-294 
[6,] -2.024422e-15 -3.250713e-50 -1.227563e-294 

봐? 이것은 함수 g (x1, x2, x3)이므로 파생 상품 w.r.t 만 가져올 수 있습니다. 그 3 차원. 질문의 "y"부분에 관해서는, 이것이 그럴 수 있습니까?

bw <- npcdensbw(formula = log(y) ~ x1 + x2 + x3,data=dta) 

나는이 패키지를 사용한 적이 없기 때문에,이 내용은 비 개업의 생각입니다. help(npcdensbw)의 예를 본 것 같습니까?

+0

감사합니다. !!! 또는 http://stackoverflow.com/questions/12568715/derivative-of-kernel-density – user1682980

관련 문제