이 작업을 수행하는 또 다른 방법의 경우, 이름과 fiter 특정 조건을 충족 이름 만 얻을 수있는 효율적인 행렬 인덱스 하위 설정을 사용하는 매트릭스를 만드는 것입니다.
id <- which(dat>0,arr.ind = TRUE)
row col
row1 1 1
row3 3 1
row1 1 2
row2 2 2
row2 2 3
당신은 nn[id]
같은 아이디, 뭔가를 사용하여 윈의 서브 세트를 할 수 있지만 당신은 행 그룹화 결과에 원하기 때문에 나는 여기 by
을 사용하고 있습니다 : 이제
nn = matrix(rep(names(dat),nrow(dat)),nrow(dat),byrow=TRUE)
nn
[,1] [,2] [,3] [,4]
[1,] "Col1" "Col2" "Col3" "Col4"
[2,] "Col1" "Col2" "Col3" "Col4"
[3,] "Col1" "Col2" "Col3" "Col4"
당신은 양의 값의 인덱스 which
을 사용하여 얻을 : , 열 2 행의 제로가 있다고하지만 당신을 말하지 않는다 -
by(id,id[,'row'],FUN=function(i)nn[as.matrix(i)])
NDICES: 1
[1] "Col1" "Col2"
------------------------------------------------------------------------------------------------------
INDICES: 2
[1] "Col2" "Col3"
------------------------------------------------------------------------------------------------------
INDICES: 3
[1] "Col1"
쉬운이'colSums (데이터)' –
@Adii_입니다 볼 수 있었다 1 –
@RichardScriven 질문을 이해하면서, 목표는 0 (colSum> 0)뿐만 아니라 0을 포함하는 열을 찾는 것입니다. 또 다른 충고는 0을 NA'a로하여 파일을 읽습니다. –