Функция R с lapply - PullRequest
       2

Функция R с lapply

0 голосов
/ 10 апреля 2019

Я пишу функцию R, используя lapply для применения преобразования разности лагов к набору переменных. Функция вычисляет первое различие по числу различных лагов, и lapply используется для перебора набора данных, содержащего много переменных. Вот код ниже.

## dt is my original dataset with 18 columns and 52 rows(observations)
## the dataframe df will contain the lagged differenced variables
df<-data.frame(index=c(1:nrow(dt)))

for(i in 1:4){
  df[paste0(names(dt), '_lag',i,'_diff1')]<-
       lapply(dt,function(x) diff      (x,lag=i,differences=1))  
 }

Однако приведенный выше код выдает ошибку следующим образом:

Ошибка в [<-.data.frame (*tmp*, paste0 (names (dt), "_lag", i, "_diff1")): элемент замены 1 имеет 51 строку, необходимо 52

Я не могу понять, где может быть ошибка, потому что мой набор данных dt имеет 52 строки, а не 51, как в сообщении об ошибке. Любая помощь будет оценена.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...