2012-11-20 4 views
14

특정 열에 대한 합계를 계산 한 다음 모든 행에 대해이 합계를 적용하고 싶습니다. 불행히도, 나는 첫 번째 단계에만 도달 할 수 있습니다. 이제 각 행마다 어떻게 적용 할 수 있습니까? R은 루프가 필요 없다는 것을 알고 있지만 올바른 접근 방법은 무엇입니까? (zscore)각 행에 대해 특정 열의 셀 합계

내 매트릭스는 다음과 같습니다

a b c t y 
1 3 4 7 7 4 

2 4 56 6 6 4 

3 3 3 2 1 7 

4 3 88 9 9 9 

지금 나는 colums의 일부를 기반으로, 각 행에 대해 행 합계를 계산 할 것입니다. 한 행의 경우 다음과 같이 표시 될 수 있습니다.

f1 <- sum(zscore[1,1:2], zscore[1,3], zscore[1,5]) 

이제 각 행에 대해 어떻게해야합니까? 당신이 그 (것)들을 제외해야합니다, 당신은 NA가없는 경우 테이블 숫자가 아닌 열이있는 경우

summed <- rowSums(zscore[, c(1, 2, 3, 5)]) 

답변

33

당신이 뭔가를 할 수 있습니다 rowSum에 있습니다.

+0

굉장히 좋았지 만, 그동안 루프를 사용했지만 해결책은 확실한 방법입니다! – user1807857

+0

그것은 R의 힘입니다 : – alestanis

0

suma.zscore = (zscore$a + zscore$c + zscore$t + zscore$y) 
+0

데이터 프레임이나 행렬에 따라, as.numeric은 다음과 같이 추가 작업을하는 데 필요할 수 있습니다. suma.zscore = (as.numeric (zscore $ a) + as.numeric (zscore $ c) ... 등) –

0

을 적용 할 수

관련 문제