#r
Вопрос:
Я пытаюсь получить фильтр hpfilter для нескольких столбцов данных, которые у меня есть с этим кодом, но я получил ошибку «Ошибка в is.ts(x) : аргумент «x» отсутствует, по умолчанию отсутствует». Я был бы признателен за любые предложения о том, как получить фильтр hpfilter для нескольких столбцов. Спасибо.
hp_filter1 <- apply(dataset[,2:ncol(dataset)],2, hpfilter(freq=1600, type="lambda"))
Комментарии:
1. Попробуй
hp_filter1 <- apply(dataset[, -1],2, hpfilter, freq=1600, type="lambda")
Ответ №1:
Вы можете использовать apply
в качестве —
hp_filter1 <- apply(dataset[, -1],2, hpfilter, freq=1600, type="lambda")
Или для исправления вашего подхода используйте анонимную функцию, которая будет понятнее.
hp_filter1 <- apply(dataset[,2:ncol(dataset)],2, function(x)
hpfilter(x, freq=1600, type="lambda"))
Поскольку вы применяете функцию к каждому столбцу, вы также можете использовать lapply
/ sapply
.