Utiliser As.numérique pour le convertir en vecteur
rollmean(as.numeric(z$bar), 2)
Question
J'essaye d'utiliser le rollmean
Fonction sur un objet zoo qui contient des colonnes non numériques. Mon objectif est d'ajouter une nouvelle colonne à l'objet existant.
Pourquoi le code de test suivant ne fonctionne-t-il pas?
library(zoo)
d <- data.frame(time=c(1, 2, 3), foo=c('a', 'b', 'c'), bar=c(32, 4, 1))
z <- zoo(d, order.by=d$time)
rollmean(z$bar, 2)
J'obtiens une erreur "argument non numérique à l'opérateur binaire". La fonction ne devrait-elle pas utiliser uniquement la colonne de barre? Dois-je créer un objet de zoo séparé pour la colonne de barre, utiliser la fonction de roulement dessus puis fusionner les résultats avec z
?
La solution
Utiliser As.numérique pour le convertir en vecteur
rollmean(as.numeric(z$bar), 2)