큰 데이터 프레임 (1 백만 + 행)에서 특정 범위 내에 있고 세 번째 기준을 만족하는 요소 (행)의 수를 세고 있습니다. 나는 그 범위의 33을 가지고 있고, 나에게 대답을 얻으려고 매우 느린 루프를 사용한다, 문제 없다.데이터 프레임 서브 세트하기 R for avoid 루프
속도가 매우 중요하므로 빠른 실행을 위해 도움을 주시면 감사하겠습니다. for 루프와 "vectorise"또는 어떤 종류의 "적용"솔루션을 제거 할 수 있습니까? 사전에
감사
코드 :
N.data<-c(1:33)
Lower<-c(0,100000,125000,150000,175000,200000,225000,250000,275000,300000,325000,350000,375000,400000,425000,450000,475000,500000,550000,600000,650000,700000,750000,800000,850000,900000,950000,1000000,1100000,1200000,1300000,1400000,1500000)
Upper<-c(100000,125000,150000,175000,200000,225000,250000,275000,300000,325000,350000,375000,400000,425000,450000,475000,500000,550000,600000,650000,700000,750000,800000,850000,900000,950000,1000000,1100000,1200000,1300000,1400000,1500000, 5000000)
for (i in 1:(length(N.data))){
N.data[i]<-nrow(dataset[dataset$Z==c & dataset$X > Lower[i] & dataset$X < Upper[i],])
}
적어도 하나의 데이터 프레임 (1 백만 + 행이있는 것) – TARehman
'N.data <-c (1:33)'의 하위 집합을 게시 할 수 있습니까? '길이 (N.data)'. '[1] 33' – vaettchen