이런 질문을 남겨도 되나 죄송하긴하지만...R을 하다가 어떻게 할지 모르겠어서 질문 남깁니다ㅠㅠ!.
첨부한 표와 같이 데이터가 구성되어있다고 하면,
저기서 9가 포함되어 있는 열을 id 기준으로 삭제하려고 하는데, 9가 포함되어 있는 열을 다 지우는게 아니라 숫자가 입력되어 있는 id중 9말고 다른 숫자가 있으면
삭제 하지 않고, 입력되어 있는 값이 9만 있으면 삭제하려고 조건을 주려면 어떻게 해야하나요...?
도움 주시면 감사하겠습니다!
Comment 1
-
cardiomoon
2017.08.01 15:12
No. | Subject | Author | Date |
---|---|---|---|
1234 | 요즘 아주 잘 쓰고 있습니다. [1] | 김승욱 | 2015.08.17 |
1233 | 자료 (xlsx or CSV) [2] | medi79 | 2015.08.31 |
1232 | 혹시 이런 질문 드려도 되는지 모르겠습니다. [5] | 고든 | 2015.09.07 |
1231 | RM ANOVA [2] | flocky | 2015.09.09 |
1230 | ANCOVA에 대해서 여쭤보고 싶습니다. [5] | 고든 | 2015.09.13 |
1229 | sensitivity, specificity 계산가능여부 여쭤봅니다. [2] | 곽미리 | 2015.09.16 |
1228 | 표만들기에서 질문드립니다. [3] | wiswis | 2015.09.22 |
1227 | Standard error [2] | R까기 | 2015.09.24 |
1226 | 결측값 처리와 관련하여 [3] | 화모기 | 2015.10.07 |
1225 | 표만들기_2차그룹변수로 했을 때 결과물 이상 [1] | 화모기 | 2015.10.10 |
1224 | 로지스틱 회귀분석 반응변수 수 제한 [3] | 화모기 | 2015.10.11 |
1223 | 향후 5년간 핵심 화두가 Cognitive Business가 될 것 같아 먼저 여기에 글을 올립니다. [2] | Ben | 2015.10.14 |
1222 | 파일업로드에 대해 문의드립니다. [3] | flapper | 2015.10.15 |
1221 | 스피어만 상관계수(Spearman correlation coefficient) [1] | ㅎㅎㅎ | 2015.10.15 |
1220 | PSM에 관해 문의 드립니다. [3] | sodium75 | 2015.10.19 |
1219 | ROC 분석과 관련하여 질문합니다. [1] | 송민지 | 2015.10.21 |
1218 | 파일 업로드 자체가 안되네요.. [3] | 주민호 | 2015.11.13 |
1217 | 사소한 건의사항이 있습니다. [1] | EPfunny | 2015.11.15 |
1216 | 나무분석 [3] | 조윤성 | 2015.12.02 |
1215 | 'x' and 'units' must have length > 0 에러 메세지 [4] | 빙하 | 2015.12.03 |
특정조건을 만족하는 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