Use como.numeric para convertê -lo em vetor
rollmean(as.numeric(z$bar), 2)
Pergunta
Estou tentando usar o rollmean
função em um objeto de zoológico que contém colunas não numéricas. Meu objetivo é adicionar uma nova coluna ao objeto existente.
Por que o seguinte código de teste não funciona?
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)
Eu recebo um erro "argumento não numérico para o operador binário". A função não deveria estar usando apenas a coluna da barra? Eu tenho que criar um objeto de zoológico separado para a coluna da barra, usar a função rolante e depois mesclar os resultados com z
?
Solução
Use como.numeric para convertê -lo em vetor
rollmean(as.numeric(z$bar), 2)