2017-07-29 1 views
-1

J'essayais d'estimer un modèle ARIMA en utilisant ma propre fonction "foo". Le code d'erreur n'a pas pu trouver trace de fonction dans R est venu nulle part. me dérange vraiment. Une idée de comment c'est arrivé? J'ai essayé le stats:::plot ne fonctionne toujours pas.Erreur: impossible de trouver un graphique de fonction dans R

```{r warning=FALSE, message=FALSE} 
require(forecast) 
foo <- function(N, y1=1, p=0.8, q=1-p, seed=NULL, stepwise=TRUE, verbose=0) { 
if (!is.null(seed)) set.seed(seed) 
y <- c(y1, rep(NA,N-1)) 
for (i in 2:N) y[i] <- p*y[i-1] + q*rnorm(1) 
if (verbose) plot(y, type='l', xlab='time') 
return (list(y=y, aa=auto.arima(y, stepwise=stepwise))) 
} 
v <- foo(N=100, seed=10, verbose=1); v$aa$coef 
``` 
+0

Mettez 'search()' juste avant l'appel 'plot' et assurez-vous que' package: stats' est sur votre arbre d'appel – MichaelChirico

+0

@MichaelChirico merci. essayé à nouveau. maintenant il apparaît Erreur dans la recherche (plot): argument non utilisé (plot) – xxyyzz

+1

vous n'avez pas fait ce que j'ai dit: p – MichaelChirico

Répondre

0
require(forecast) 
Loading required package: forecast 
> foo <- function(N, y1=1, p=0.8, q=1-p, seed=NULL, stepwise=TRUE, verbose=0) { 
+  if (!is.null(seed)) set.seed(seed) 
+  y <- c(y1, rep(NA,N-1)) 
+  for (i in 2:N) y[i] <- p*y[i-1] + q*rnorm(1) 
+  if (verbose) plot(y, type='l', xlab='time') 
+  return (list(y=y, aa=auto.arima(y, stepwise=stepwise))) 
+ } 
> v <- foo(N=100, seed=10, verbose=1); v$aa$coef 
    ar1 
0.8946974 

Votre code fonctionne bien .. Il trace même un terrain. Donc, peut-être le problème est avec le chargement du paquet de prévisions .. Ou essayez d'utiliser stats :: plot avant l'intrigue pas trois colons, mais deux.