Как я могу сделать это l oop? - PullRequest
0 голосов
/ 30 апреля 2020

У меня есть матрица, в которой содержатся ежемесячные доходы, и я хочу создать новую в R, которая будет содержать квартальные доходы на основе этой матрицы. Как я могу сделать al oop, чтобы вычислить это? Чтобы быть более точным, матрица ежемесячных возвратов имеет размеры 552 (строки) x25 (столбцы), новая будет иметь 184 (строки) x25 (столбцы), где

  • new(1,1)=old(1,1)+old(2,1)+old(3,1)
  • new(2,1)=old(4,1)+old(5,1)+old(6,1)
  • ...
  • new(184,25)=old(550,25)+old(551,25)+old(552,25)

(под термином new (,) я ссылаюсь на элемент новой матрицы и как старый (,) матрицы с ежемесячной доходностью). Я не знаю, как исправить эту новую матрицу. Кто-нибудь знает, как рассчитать это в R?

1 Ответ

0 голосов
/ 30 апреля 2020

Может быть, вы можете попробовать следующий код

new <- rowsum(old,ceiling(seq(nrow(old))/3))

или

new <- unname(t(as.matrix(sapply(split(as.data.frame(old),ceiling(seq(nrow(old))/3)),colSums))))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...