Я пытаюсь запустить несколько функций взаимной корреляции между парами столбцов из большого фрейма данных.Я написал цикл for, который выполняет эту работу, но время вычислений медленное.
Например, я хочу запустить функцию CCF на s1 и s2, затем на s3 и s4.реальные данные имеют> 100 столбцов и> 50000 строк, каждая пара столбцов имеет уникальное количество строк.также выполняю симуляции Монте-Карло и готовлю максимальные CCF / задержки, но для краткости я не включил этот код здесь.Я запустил профилировщик, и CCF, кажется, занимает больше времени для запуска, я надеялся, что функция применения может помочь решить эту проблему?
blahthresholdtest <- data.frame("S1"=1:8, "S2" = (8:1), "S3"= 1:8, "S4"= 9:2)
для цикла, который я написал:
k=1
for(i in seq(1,ncol(blahthresholdtest),2)){
ccftime <- ccf(blahthresholdtest[,i],blahthresholdtest[,i+1], type="correlation", na.action=na.omit)
#adds one to k each loop to shift columns for analysis over
k <- k + 1
}