2016-09-22 6 views
0

2 행이있는 행렬이 있고,이를 지정된 차원의 행렬로 바꾸고 싶습니다. 내가하고 싶은 무엇지정된 치수를 가진 다른 행렬에 행렬

> t <- matrix(rnorm(20), ncol=2, nrow=10) 
     [,1]  [,2] 
[1,] 1.4938530 1.2493088 
[2,] -0.8079445 1.8715868 
[3,] 0.5775695 -0.9277420 
[4,] 0.4415969 2.6357908 
[5,] 0.3209226 -1.1306049 
[6,] 0.5109251 -0.8661100 
[7,] 1.9495571 0.2092941 
[8,] 0.7816373 1.1517466 
[9,] 0.0300595 -0.1351532 
[10,] 0.7550894 0.7778869 

은 같은 것입니다 :

> tt <- matrix(t, ncol=4, nrow=5) 
     [,1]  [,2]  [3,]  [4,] 
[1,] 1.4938530 1.2493088 -0.8079445 1.8715868 
[2,] 0.5775695 -0.9277420 0.4415969 2.6357908 
[3,] etc. 

내가 모듈과 함께 일을 시도했지만 나에게 하나라도 더 분을 시도하는 내 머리가 너무 아파요.

답변

3

당신은 데이터가 원하는 순서에 저장되어 있으므로, 첫 번째 행렬을 전치 다음 행에 의해 두 번째 행렬을 채울 수 :

tt <- matrix(t(t), ncol=4, nrow=5, byrow = T) 

t 
#    [,1]  [,2] 
# [1,] -1.4162465950 0.01532476 
# [2,] -0.2366332875 -0.04024386 
# [3,] 0.5146631983 -0.34720239 
# [4,] 1.9243922633 -0.24016160 
# [5,] 1.6161165230 0.63187438 
# [6,] -0.3558181508 -0.73199138 
# [7,] 0.7459405376 0.01934826 
# [8,] -1.0428581093 -2.04422042 
# [9,] 0.0003166344 0.98973993 
#[10,] 0.6390745275 -0.65584930 

tt 
#    [,1]  [,2]  [,3]  [,4] 
# [1,] -1.4162465950 0.01532476 -0.2366333 -0.04024386 
# [2,] 0.5146631983 -0.34720239 1.9243923 -0.24016160 
# [3,] 1.6161165230 0.63187438 -0.3558182 -0.73199138 
# [4,] 0.7459405376 0.01934826 -1.0428581 -2.04422042 
# [5,] 0.0003166344 0.98973993 0.6390745 -0.65584930 

당신이 R의 매트릭스와 함께 작동, 당신이 생각할 수 그것은 열에 의해 저장된 데이터와 벡터로. 따라서 행렬로 행을 기준으로 데이터를 추출하는 것은 본질적으로 데이터가 저장되는 방식 인 열로 추출하는 것과 똑같지 않습니다. 첫 번째 행렬을 조 변경 한 후에는 데이터를 추출 할 순서대로 저장 한 다음 두 번째 행을 행 단위로 채 웁니다.