R блестящий, построите иерархическую сегментацию, где пользователь может ввести уровень среза
В R Shiny я запускаю и строю (через дендрограмму) иерархическую сегментацию:
hc <- reactive({
if(length(kc()) == 0){
return(NULL)
}else{
hc <- hclust(dist(kc()$centers), method="ward.D")
return(hc)
}
})
output$hc_plot <- renderPlot({
if(is.null(hc())){
return(NULL)
}else{
plot(hc(), main="dendrogram")
}
})
Я хотел бы позволить пользователю вырезать дендрограмму через поле ввода nb_kernel_hc, поэтому я делаю:
observe({
if(input$nb_kernel_hc != input$nb_kernel){
hc()$vecteur <- stats::cutree(hc(), k = input$nb_kernel_hc )
rect.hclust(hc(), k=input$nb_kernel_hc, border="red")
}
})
Но я получаю:
Предупреждение: ошибка в stats:: cutree: неверное дерево (компонент слияния)
пока он отлично работает в R