R의 데이터 조작에 관한 매우 일반적인 질문이 있으며 편리하고 빠른 방법을 모색 중입니다. 내가 (R) - by - (nxm) 차원의 행렬, 즉 R 개의 행과 n × m 개의 행을 가지고 있다고 가정합니다.행렬의 블록 수량 계산 R
set.seed(999)
n = 5; m = 10; R = 100
ncol = m*n
mat = matrix(rnorm(n*m*R), nrow=R, ncol=ncol)
지금 나는 새로운 매트릭스 (new.mat
를 호출) 차원의 (R) -by- (m)를 갖고 싶어, 즉 mat
의 특정 행을 주어, 나는 수 (합계 말한다)을 계산하려면 첫 번째 n
요소의 경우 다음 n
요소의 번호 등입니다. 이 방법으로 mat
의 첫 번째 행은 m
개의 숫자로 끝납니다. 동일한 행이 mat
행마다 행해집니다. 위에서 주어진 예
, 새로운 new.mat
행렬의 첫번째 행의 첫번째 요소 sum(mat[1,1:5])
있어야 2 요소 sum(mat[1,6:10])
되고 마지막 요소 sum(mat[1,46:50])
이다. new.mat
의 두 번째 행은 (sum(mat[2,1:5]), sum(mat[2,6:10),...)
입니다.
가능하면 for
루프를 피하는 것이 좋습니다. 고맙습니다!
감사합니다! 그건 정말 도움이 :) – alittleboy