[R-br] Manter a estrutura do objeto da funcao randomForest

Marcus Nunes marcus.nunes em gmail.com
Ter Dez 10 21:35:10 -02 2019


O resultado da função `load` não deve ser designado a um objeto. Faça as
seguintes alterações no teu código e tudo deve rodar como esperado:

library(randomForest)
modelCT <- randomForest(Sepal.Length  ~ ., data = iris, importance = TRUE)
# modelagem com randomForest
str(modelCT)
save("modelCT", file = "model.rda") # salvei como rda

rm(list = ls()) # apenas para apagar o workspace e mostrar que, de fato, o
modelo ajustado foi carregado a partir do arquivo .rda

load("model.rda")
str(modelCT) # o modelo ajustado precisa ser chamado pelo nome seu original

predValid <- predict(modelCT, iris, type = "class")
--
Marcus Nunes
Professor Adjunto
Universidade Federal do Rio Grande do Norte
Centro de Ciências Exatas e da Terra
Departamento de Estatística
Laboratório de Estatística Aplicada
marcus em marcusnunes.me
https://marcusnunes.me/
http://shiny.estatistica.ccet.ufrn.br
http://lea.estatistica.ccet.ufrn.br/


On Tue, Dec 10, 2019 at 7:23 PM Nilson Guiotoku por (R-br) <
r-br em listas.c3sl.ufpr.br> wrote:

> Pessoal estou com uma dúvida quanto o pacote randomForest do R. Usei a
> função randomForest para modelar o meu conjunto de dados.
> Como irei aplicar o modelo já treinado para meu conjunto teste, salvei
> como .rda. Na próxima etapa iria subir o treino (.rda) para rodar o banco
> de dados independente. Porém,
> a forma como salvei está dando erro quando aplico a função predict. É como
> se o load ou a extensão .rda não conservasse o formato do banco de dados. E
> o erro é que o objeto "model" deveria ser
> um randomForest e ele fica como "character". Eu sei que eu poderia usar o
> que foi salvo na memoria do R, o modelCT, esse se usar no predict não daria
> erro. Mas para cada novo conjunto de dados independente, não gostaria de
> ficar treinando a todo o momento,
> gostaria de passar somente os parâmetros já treinados.
>
>
> Como um código executável para exemplificar o problema usei o da Iris.
>
> library(randomForest)
> modelCT <- randomForest::randomForest(Sepal.Length  ~ ., data = iris,
> importance = TRUE) # modelagem com randomForest
> str(modelCT)
> save(modelCT, file = "model.rda") # salvei como rda
> model = load("model.rda")  # Faço a chamada do arquivo treinado .rda
> str(model)
> predValid <- randomForest::predict(model, iris, type = "class")  # o banco
> de dados deveria ser independente, mas aqui é somente para mostrar o erro
> do formato como está o model
> predValid <- predict(model, iris, type = "class")
> _______________________________________________
> R-br mailing list
> R-br em listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça
> código mínimo reproduzível.
>
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://listas.inf.ufpr.br/pipermail/r-br/attachments/20191210/9b0597b0/attachment.html>


Mais detalhes sobre a lista de discussão R-br