이런 질문을 남겨도 되나 죄송하긴하지만...R을 하다가 어떻게 할지 모르겠어서 질문 남깁니다ㅠㅠ!.
첨부한 표와 같이 데이터가 구성되어있다고 하면,
저기서 9가 포함되어 있는 열을 id 기준으로 삭제하려고 하는데, 9가 포함되어 있는 열을 다 지우는게 아니라 숫자가 입력되어 있는 id중 9말고 다른 숫자가 있으면
삭제 하지 않고, 입력되어 있는 값이 9만 있으면 삭제하려고 조건을 주려면 어떻게 해야하나요...?
도움 주시면 감사하겠습니다!
Comment 1
-
cardiomoon
2017.08.01 15:12
No. | Subject | Author | Date |
---|---|---|---|
1254 | 생존분석 [1] | toby | 2015.04.29 |
1253 | RStudio v0.99 Preview: Code Diagnostics [1] | fermat39 | 2015.04.30 |
1252 | Rstudio 사용법` [3] | 방랑자 | 2015.05.02 |
1251 | need finite 'xlim' values [3] | anthleemd | 2015.05.02 |
1250 | 샤이니 앱에서 SQL 명령어 사용 방법 [2] | 김브링이 | 2015.05.06 |
1249 | 표만들기 관련 [2] | 현승협 | 2015.05.07 |
1248 | MS word문서 저장관련 [1] | 아자 | 2015.05.09 |
1247 | R서버 설치 문의드립니다. [4] | 화모기 | 2015.05.13 |
1246 | 웹에서 하는 R통계 - R코드 [2] | 김영진 | 2015.06.07 |
1245 | Plot inset 만들기 | cardiomoon | 2015.06.09 |
1244 | 오류 질문 - 표작성시 [1] | 미소천사 | 2015.06.15 |
1243 | 오류 질문 - PDF 변환 안되는 file입니다. [1] | 미소천사 | 2015.06.15 |
1242 | print ztable [1] | 김영진 | 2015.06.17 |
1241 | 표 작성시 질문 [1] | simsim | 2015.06.17 |
1240 | 나무 분석 질문입니다. | 미소천사 | 2015.06.19 |
1239 | Interactive ggplot2 [2] | cardiomoon | 2015.06.22 |
1238 | Rstudio server 서버 오류 관련해서 문의드립니다. [2] | 노상래 | 2015.07.22 |
1237 | Rstudio server 무한 로딩 관련해서 문의 드립니다. [6] | 노상래 | 2015.07.24 |
1236 | http://www.r-statistics.com/ 번역소식 [1] | fermat39 | 2015.07.25 |
1235 | 생존분석 변수선택 [3] | nash | 2015.08.11 |
특정조건을 만족하는 Row 삭제
먼저 예제 데이터를 만들어 data.csv에 저장하였습니다. 이 파일을 읽어 data에 저장합니다.
data=read.csv("test.csv")
data
ID a b c d e f g
1 101 NA NA NA NA NA NA NA
2 102 9 10 NA NA NA NA NA
3 103 NA 9 NA NA NA NA NA
4 104 NA NA 9 9 NA NA NA
5 105 NA NA 1 8 9 NA NA
6 106 NA NA NA NA NA NA NA
7 107 NA 2 NA NA NA NA NA
8 108 NA NA 4 7 NA NA 9
다음으로 x라는 벡터를 읽어 NA값을 제외한 후 x에 9만 포함되어 있으면 TRUE, 9 이외에 다른 값이 있으면 FALSE를 반환하는 함수를 만듭니다.
seek9only=function(x){
x=x[!is.na(x)]
if(length(unique(x))!=1) result<-FALSE
else if(unique(x)==9) result<-TRUE
result
}
apply 함수를 이용해 data의 열을 기준으로 이 함수를 적용시킵니다.
select<-apply(data,2,seek9only)
select
ID a b c d e f g
FALSE TRUE FALSE FALSE FALSE TRUE FALSE TRUE
원하는 데이터는 다음과 같이 고르시면 됩니다.
data1<-data[!select]
data1
ID b c d f
1 101 NA NA NA NA
2 102 10 NA NA NA
3 103 9 NA NA NA
4 104 NA 9 9 NA
5 105 NA 1 8 NA
6 106 NA NA NA NA
7 107 2 NA NA NA
8 108 NA 4 7 NA