이런 질문을 남겨도 되나 죄송하긴하지만...R을 하다가 어떻게 할지 모르겠어서 질문 남깁니다ㅠㅠ!.
첨부한 표와 같이 데이터가 구성되어있다고 하면,
저기서 9가 포함되어 있는 열을 id 기준으로 삭제하려고 하는데, 9가 포함되어 있는 열을 다 지우는게 아니라 숫자가 입력되어 있는 id중 9말고 다른 숫자가 있으면
삭제 하지 않고, 입력되어 있는 값이 9만 있으면 삭제하려고 조건을 주려면 어떻게 해야하나요...?
도움 주시면 감사하겠습니다!
Comment 1
-
cardiomoon
2017.08.01 15:12
No. | Subject | Author | Date |
---|---|---|---|
1114 | 성향점수 맞추기 [3] | alse | 2016.05.25 |
1113 | 아래에 올렸었는데요,, 5Y overall survival 구하는 법이요. [2] | 난둥 | 2016.05.26 |
1112 | 로지스틱 회귀 분석에서.. [1] | 최00 | 2016.05.27 |
1111 | 기본표를 만드는데 file이 이상하게 읽히는 것 같습니다. | 매일이5월 | 2016.06.02 |
1110 | 파일 불러오기 에러 [2] | 매일이5월 | 2016.06.02 |
1109 | 파일 불러오기 오류 [2] | 매일이5월 | 2016.06.02 |
1108 | RPubs에 있는 ROC curve analysis by cardiomoon [2] | hawk1227 | 2016.06.02 |
1107 | R 그래프 옮기기 [2] | hawk1227 | 2016.06.03 |
1106 | 생존분석 그래프 x축 시간 [3] | alse | 2016.06.07 |
1105 | 자료업로드에러 [3] | dejavu730 | 2016.06.07 |
1104 | 학생강의 project1 | cardiomoon | 2016.06.07 |
1103 | 결측치 처리에 대한 질문입니다. [2] | 매일이5월 | 2016.06.07 |
1102 | IBM의 R 컨소시엄 가입 | Ben | 2016.06.08 |
1101 | 서버 접속이 안됩니다 [2] | kim | 2016.06.08 |
1100 | binary data 군집분석 [2] | 노가리 | 2016.06.08 |
1099 | 생존 분석시 문제 [3] | selteen | 2016.06.09 |
1098 | 생존 분석을 하는데 질문이 있어 게시판에 글을 올립니다. [1] | namuhanayeyo | 2016.06.11 |
1097 | 독립(설명)변수 비정규 분포시. logistic regression 문의입니다. [1] | 매일이5월 | 2016.06.16 |
1096 | Simple linear regression 에서 설명변수의 특성 [3] | 매일이5월 | 2016.06.16 |
1095 | Rstudio 에러 문제 [2] | 화모기 | 2016.06.16 |
특정조건을 만족하는 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