varias tipos texto superponer resumen las graficos graficas ejemplos claves argumentos argumentativo argumentacion r formula prediction

tipos - Error en los términos. Fórmula(fórmula): ''.'' en la fórmula y ningún argumento ''datos''



tipos de argumentos (2)

Estoy tratando de usar neuralnet para la predicción.

Crea un poco de X:

x <- cbind(seq(1, 50, 1), seq(51, 100, 1))

Crear Y:

y <- x[,1]*x[,2]

Dales un nombre

colnames(x) <- c(''x1'', ''x2'') names(y) <- ''y''

Hacer data.frame:

dt <- data.frame(x, y)

Y ahora tengo error.

model <- neuralnet(y~., dt, hidden=10, threshold=0.01)

error en los términos. fórmula (fórmula): ''.'' en la fórmula y ningún argumento ''datos''

Por ejemplo, en lm (modelo lineal) esto está trabajado.


Al ofrecer una alternativa más simple a la respuesta anterior, puede crear una fórmula a partir de los nombres de dt usando reformulate() :

f <- reformulate(setdiff(colnames(dt), "y"), response="y")

reformulate() no requiere el uso de paste() y automáticamente agrega los términos juntos.


Como dice mi comentario, esto parece un error en la función no exportada neuralnet:::generate.initial.variables . Como solución, simplemente construya una fórmula larga a partir de los nombres de dt , excluyendo y , por ejemplo,

n <- names(dt) f <- as.formula(paste("y ~", paste(n[!n %in% "y"], collapse = " + "))) f ## gives > f y ~ x1 + x2 ## fit model using `f` model <- neuralnet(f, data = dt, hidden=10, threshold=0.01) > model Call: neuralnet(formula = f, data = dt, hidden = 10, threshold = 0.01) 1 repetition was calculated. Error Reached Threshold Steps 1 53975276.25 0.00857558698 1967