В настоящее время я запускаю множество строк применения, которые выглядят так:
test=data.frame(t=seq(1,5,1),e=seq(6,10,1))
mean(apply(test,2,mean))
Я хочу преобразовать вторую строку в mclapply, которая дает тот же результат, что и lapply. Я понимаю, что могу извлечь каждый элемент из оператора lapply с помощью цикла for, а затем использовать среднее значение для этого вектора, но это снизит производительность, которую я пытаюсь улучшить с помощью mclapply. Проблема в том, что lapply и mcapply возвращают список, что означает, что его нельзя использовать. Я могу использовать [[]], чтобы получить фактическое значение, или проверить $ t и проверить $ e, но число столбцов в тесте является переменным и обычно превышает 1000. Должен быть более простой способ справиться с этим. В основном я хочу получить среднее значение этого утверждения:
mclapply(test,mean,mc.preschedule=TRUE)
желательно без генерации новых переменных или использования циклов for. Решение должно быть эквивалентно получению среднего значения этого утверждения:
lapply(test,mean)