Le déplacement de la variance dans la R
Je sais que le filter()
fonction dans R calculer la moyenne mobile. Je voudrais savoir si il existe une fonction qui m'a fait le déplacement de la variance ou l'écart-type, afin de montrer dans une parcelle à côté de la sortie de filter()
fonction.
Vous devez vous connecter pour publier un commentaire.
Envisager la zoo paquet. Par exemple
filter()
donne:alors que
rollmean()
dans zoo donne:qui est le même (pour un 3 points à la moyenne mobile dans cet exemple).
Tandis que zoo n'ont pas de
rollsd()
ourollvar()
il n'ontrollapply()
, qui fonctionne comme laapply()
fonctions qui s'appliquent à toute la fonction R de la fenêtre spécifiée.ou sur quelque chose de plus intéressant:
Vous pouvez vous débarrasser de l'avertissement à l'aide de la
fill = NA
argument, comme dansts
?rollapply()
a été), mais il n'y a rien en conserve que je suis au courant deLe TTR paquet a
runSD
entre autres:runSD
sera beaucoup plus rapide querollapply
parce qu'il évite de faire beaucoup de R des appels de fonction. Par exemple:<n
cette fonction génère une erreur, ce qui signifie que si vous l'appliquez à de nombreux groupes dans un ensemble de données (par exemple, les différentes actions, à l'aide dedata.table
), et l'un d'eux a trop peu de données, l'ensemble de l'opération sera le rendement d'une erreur de typeis outside valid range:...
. Les utilisateurs pourraient résoudre ce par emballage de la fonction de donner un comportement différent (comme retourner à laNA
s) lorsqu'il y a trop peu de données est fourni.NA
lorsque trop peu de données est fourni. Je vais étudier la façon de mettre en place quelque chose comme ça directement dans le TTR fonctions (voir la #68).rollapply
dans lezoo
package prend une fonction arbitraire. C'est différent defilter
en ce qu'il exclut laNA
s par défaut.Cela étant dit, cependant, il n'y a pas beaucoup de sens dans le chargement d'un package pour une fonction qui est si simple de s'enrouler (pun intended).
Voici un qui est aligné à droite: