다음은 모든 터미널 노드의 가중치를 나열하는 데 사용할 수있는 방법입니다. 그러나 각 터미널에서 가중치뿐만 아니라 응답 예측을 얻기 위해 코드를 추가하는 방법은 무엇입니까? 노드 ID : 모든 터미널 노드를 얻는 방법 - 무게 및 반응 예측 'ctree'in r
내가 내 출력이같이하고 싶은 말은 - 여기 아래 내가 체중을 얻기 위해 지금까지 무엇을 가지고
nodes(airct, unique(where(airct)))
감사합니다.
다음은 모든 터미널 노드의 가중치를 나열하는 데 사용할 수있는 방법입니다. 그러나 각 터미널에서 가중치뿐만 아니라 응답 예측을 얻기 위해 코드를 추가하는 방법은 무엇입니까? 노드 ID : 모든 터미널 노드를 얻는 방법 - 무게 및 반응 예측 'ctree'in r
내가 내 출력이같이하고 싶은 말은 - 여기 아래 내가 체중을 얻기 위해 지금까지 무엇을 가지고
nodes(airct, unique(where(airct)))
감사합니다.
이진 트리는 큰 S4 개체이므로 때로는 데이터를 추출하기가 어렵습니다.
그러나 BinaryTree 객체의 플롯 방법 인 hase는 터미널 노드를 플로팅하는 function (node) 형식의 선택적 패널 함수입니다. 그래서 플롯하면이 노드에 대한 모든 정보를 얻을 수 있습니다. 여기
무엇을의 I는 정보를 추출, 플롯 기능을 사용하여 더 나은 나는 테이블 여기
library(party)
library(gridExtra)
set.seed(100)
lls <- data.frame(N = gl(3, 50, labels = c("A", "B", "C")),
a = rnorm(150) + rep(c(1, 0,150)),
b = runif(150))
pond= sample(1:5,150,replace=TRUE)
tt <- ctree(formula=N~a+b, data=lls,weights = pond)
output.df <- data.frame()
innerWeights <- function(node){
dat <- data.frame (x=node$nodeID,
y=sum(node$weights),
z=paste(round(node$prediction,2),collapse=' '))
grid.table(dat,
cols = c('ID','Weights','Prediction'),
h.even.alpha=1,
h.odd.alpha=1,
v.even.alpha=0.5,
v.odd.alpha=1)
output.df <<- rbind(output.df,dat) # note the use of <<-
}
plot(tt, type='simple', terminal_panel = innerWeights)
data
ID Weights Prediction
1 4 24 0.42 0.5 0.08
2 5 17 0.06 0.24 0.71
3 6 24 0.08 0 0.92
4 7 388 0.37 0.37 0.26
로 터미널 노드의 형태를 변경하려면 gridExtra
및 패키지를 usee I 발견, 그것은 약간의 추가 정보와 함께 잘 작동합니다. 그러나 나는 누군가를 미래에 필요로 할 때를 대비하여 여기에 게시하고 싶습니다.
y <- do.call(rbind, nodes(tt, unique(where(tt))))
write.table(y, 'clipboard', sep='\t')
@agstudy, 내 생각을 알려주세요.
이것은 정확히 내가 필요한 것입니다. 감사합니다 ~ – JPC