2012-07-11 3 views
1

나는 동료들과 내가 알 수없는 비교적 간단한 질문을 가지고있다. 나는 어떤 열의 범위 내에서 내 데이터 집합의 모든 행에 붙여 넣으려는 값의 벡터를 가지고 있습니다. 내가 행의 총 수를 통해 값을 지정하려고하면벡터의 행에 값 할당

data[1, 1:10] <- myvector 
data[2, 1:10] <- myvector 

, 동일한 코드가 제대로 작동하지 않습니다 : 내가 행에 의해 값을 행을 할당하는 경우

다음 코드는 작동

data[1:nrows(data), 1:10] <-myvector 

벡터의 값이 가로로 표시되는 것이 아니라 세로로 채워지는 것처럼 보입니다. 우리가 얻은 최선의 해결 방법은 데이터에 2 만 개의 행이 있다고 가정하면 이상적이지 않습니다.

for (i in 1:nrow(data)){ 
    data[i, 1:10] <-myvector 
} 

무엇이 잘못되었는지 간단히 설명해야합니다. 도와주세요!

답변

6

벡터와 같은 행렬에 벡터를 지정하면 관찰 한 것처럼 수직으로 채 웁니다. 그러나 적절한 벡터를 할당하여이 문제를 해결할 수 있습니다.

data[, 1:10] = rep(myvector, each=NROW(data)) 
+0

고마워요. 매력처럼 작동 :) – roody