2017-05-16 3 views
0

randomForest 패키지를 사용하여 임의의 포리스트 분류를 실행했습니다. 끝나면 분류기에 summary()를 입력했는데 ntree 매개 변수가 1과 같았습니다. 기본값이 500이라고 말했을 때 randomForest 인수에서 수동으로 변경할 수있었습니다. 나는 실패했다.R (randomForest) : ntree = 1 어떻게 변경합니까?

다른 데이터 세트를 사용해 보았는데 동일한 문제가있었습니다. 아무도 무슨 일이 일어날 지 상상해 보지 않습니까?

+1

실행 한 코드를 표시 할 수 있습니까? 더 좋은 것은 [재현 할 수있는 예제] (http://stackoverflow.com/a/5963610/496488)입니까? – eipi10

+0

감사! 그 해결책은 내 앞에 있었다. 전에 그것을 시도하지 않았다는 것을 믿을 수 없다. – hrmello

답변

1

TL : DR : 모델의 요약을 보려면 모델 개체의 이름을 입력하기 만하면됩니다. 예를 들어 모델 객체가 rf1rf1 인 경우 summary(rf1)이 아닌 경우입니다.


대부분의 패키지는 패키지에 의해 생성 된 객체에 summary를 실행할 때 전달됩니다 요약 "방법"이있다. 그러나 randomForest의 경우에는 요약 방법이없는 것 같습니다. randomForest의 출력은 일련의 모델 출력을 포함하는 목록입니다. summary을 실행할 때 각 목록 요소의 길이를 반환하는 기본 summary 함수를 실행하기 만합니다. 여기서는별로 유용하지 않습니다.

따라서, 당신은 당신의 randomForest 모델 객체에 summary을 실행이 경우에, ntreerandomForest에 의해 반환 된리스트의 요소이기 때문에 당신은 ntree 1의 값을보고있는 그것은 길이가 1 인 벡터이다 summary 출력의 열 이름은 Length입니다.

모델 결과 요약을 보려면 모델 개체의 이름을 입력하기 만하면 실제 요약이 콘솔에 인쇄됩니다. 예를 들어, 모델 객체가 rf1이라면 summary(rf1)이 아니라 rf1을 입력하기 만하면됩니다. 개체 이름을 입력하면 print.randomForest 메서드가 전달되고 ntree을 포함하여 randomForest 결과 요약을 제공합니다.

당신이 randomForest에 의해 반환 된리스트의 구조를 볼 수 있으며이 목록에 무엇에 대한 자세한 내용은 randomForest에 대한 도움말을보고 str(rf1)를 실행하여 모델에서 ntree의 값 또는 다른 결과를 추출 할 경우

. 예를 들어 rf1$ntree은 모델의 트리 수를 반환합니다.