вызывая результаты каждой итерации в серии - PullRequest
0 голосов
/ 12 июня 2018

Я запустил цикл, и результаты сохраняются в списке com.Теперь мне нужно вызвать результаты каждой итерации (# iterations = 2000) и вычислить среднее значение, как показано ниже:

l<-rbindlist(list(com[[1]], com[[2]], com[[3]],...com[[2000]]))[, .(values = mean(values)),
             by = variables][order(variables)]. 

Я новичок в R. Каков будет простой способ сделать это??

1 Ответ

0 голосов
/ 12 июня 2018

Пока вы не предоставите пример данных, это будет только догадка.Я предполагаю, что результаты в вашем списке com являются числовыми векторами.В противном случае это решение может не работать.

Это база R, а не data.table.

Пример данных:

set.seed(1)
com <- list(rnorm(100), rnorm(100), rnorm(100), rnorm(100), rnorm(100))

Мы связываем результаты вместеиспользуя do.call:

l <- do.call("rbind", com)

Теперь мы используем векторизацию rowMeans:

rowMeans(l)

> rowMeans(l)
[1]  0.10888737 -0.03780808  0.02967354  0.05160186 -0.03913424
...