Modérateur : Groupe des modérateurs
J'essaye de faire des test ADF sur des series temporelles et je rencontre qq difficultés. Voila la commande que j'ecris :
ADF.test(wts=log(cost), itsd=c(1,1,c(0)), regvar=0, selectlags=list(mode="signf", Pmax=NULL))
et voila le message d'erreur qu'il me fait ressortir :
Erreur dans validObject(.Object) : invalid class "adfstat" object: invalid object for slot "wts" in class "adfstat": got class "numeric", should be or extend class "ts"
De plus : Warning message:
p-value is greater than printed p-value in: interpolpval(code = code, stat = adfreg[, 3], N = N)
>
Est ce qu'il ya qqun qui peut m'expliquer qu'est ce que cela signifie?? J'arrive pas à trouver mon erreur.
Arguments
wts a univariate time series object.
Renaud Lancelot a écrit :J'essaye de faire des test ADF sur des series temporelles et je rencontre qq difficultés. Voila la commande que j'ecris :
ADF.test(wts=log(cost), itsd=c(1,1,c(0)), regvar=0, selectlags=list(mode="signf", Pmax=NULL))
et voila le message d'erreur qu'il me fait ressortir :
Erreur dans validObject(.Object) : invalid class "adfstat" object: invalid object for slot "wts" in class "adfstat": got class "numeric", should be or extend class "ts"
De plus : Warning message:
p-value is greater than printed p-value in: interpolpval(code = code, stat = adfreg[, 3], N = N)
>
Est ce qu'il ya qqun qui peut m'expliquer qu'est ce que cela signifie?? J'arrive pas à trouver mon erreur.
Bonjour Amélie,
Merci d'indiquer le package d'origine des fcts que vous utilisez. En l'occurrence, je pense que la réponse à votre question est dans l'aide de la fct ADF.text (package uroot):Arguments
wts a univariate time series object.
Je pense que "cost" n'est pas un objet de class ts, d'où le message d'erreur. Voir l'aide de la fct ts: ?ts.
Pour le reste je ne connais pas la méthode et ne peut vous répondre.
Renaud
Logez Maxime a écrit :Bonjour,
Ce qu'il faut que tu regardes dans un test c'est la valeur de la p-value associée à la statistique de ton test (ici "t"), si celle-ci est inférieure au seuil de décision (risque de première espèce : rejeter H0 alors que H0 est vraie) que tu te fixes pour rejeter H0 (hypothèse nulle), alors ton test est dit significatif et tu rejettes H0. Ici si tu te fixes un seuil de 5%, ta p-value est inférieure à 1% donc à 5% et par conséquent tu rejettes H0. Après je ne connais pas ce test et je ne sais donc pas ce que tu testes ici mais c'est significatif.
Maxime
Par contre, j'ai une question tte bête! est ce que tu sais comment ecrire une serie en différence première ou seconde sur R. Et c quoi la différence entre "difference" et "lag"?
Code : Tout sélectionner
diff(x)
Code : Tout sélectionner
diff(x, difference = 2)
Code : Tout sélectionner
> x <- ts(1:10, frequency = 4, start = c(1959, 2))
> x
Qtr1 Qtr2 Qtr3 Qtr4
1959 1 2 3
1960 4 5 6 7
1961 8 9 10
> diff(x)
Qtr1 Qtr2 Qtr3 Qtr4
1959 1 1
1960 1 1 1 1
1961 1 1 1
> diff(x, lag = 2)
Qtr1 Qtr2 Qtr3 Qtr4
1959 2
1960 2 2 2 2
1961 2 2 2
> diff(x, difference = 2)
Qtr1 Qtr2 Qtr3 Qtr4
1959 0
1960 0 0 0 0
1961 0 0 0
> diff(diff(x))
Qtr1 Qtr2 Qtr3 Qtr4
1959 0
1960 0 0 0 0
1961 0 0 0
Renaud Lancelot a écrit :Par contre, j'ai une question tte bête! est ce que tu sais comment ecrire une serie en différence première ou seconde sur R. Et c quoi la différence entre "difference" et "lag"?
Voir la fct diff et son aide (?diff).
En bref,
* l'argument lag indique le nombre d'observations consécutives entre lesquelles on calcule la différence
* l'argument difference indique l'"ordre" de la différence: si difference = 2, diff est appliqué deux fois de suite sur la série.
Donc une différence première (avec lag = 1) s'écrit:Une différence seconde s'écritCode : Tout sélectionner
diff(x)
Code : Tout sélectionner
diff(x, difference = 2)
Exemple:Code : Tout sélectionner
> x <- ts(1:10, frequency = 4, start = c(1959, 2))
> x
Qtr1 Qtr2 Qtr3 Qtr4
1959 1 2 3
1960 4 5 6 7
1961 8 9 10
> diff(x)
Qtr1 Qtr2 Qtr3 Qtr4
1959 1 1
1960 1 1 1 1
1961 1 1 1
> diff(x, lag = 2)
Qtr1 Qtr2 Qtr3 Qtr4
1959 2
1960 2 2 2 2
1961 2 2 2
> diff(x, difference = 2)
Qtr1 Qtr2 Qtr3 Qtr4
1959 0
1960 0 0 0 0
1961 0 0 0
> diff(diff(x))
Qtr1 Qtr2 Qtr3 Qtr4
1959 0
1960 0 0 0 0
1961 0 0 0
Retourner vers « Questions en cours »
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité