Суммарный список-столбец матриц (из вложенных data.frame) с использованием R, dplyr - PullRequest
0 голосов
/ 10 ноября 2019

У меня есть группа data.frame со столбцом m, который содержит матрицы 2x2, как в этом примере:

library(tidyverse)
d <- data.frame(g=c(1,1,2,2),x1=c(1,1,1,1),x2=c(1,1,1,1))
d_by <- d  %>%  group_by(g) %>% nest %>% 
  mutate(m = map(data,data.matrix))
d_by$m %>% str

Как добавить матрицы из столбца списка m в одинматрица?

Я пытался использовать

d_by %>% summarise(sum(m))

, но получил сообщение об ошибке:

Error in sum(m) : invalid 'type' (list) of argument

Ответы [ 2 ]

2 голосов
/ 10 ноября 2019

Или в base R

Reduce(`+`, d_by$m)
2 голосов
/ 10 ноября 2019

Вы можете использовать reduce для произвольного числа матриц

purrr::reduce(d_by$m, `+`)
...