반응형
데이터프레임 자료를 조건을 걸어 추출하기 위한 방법은 기본적으로 subset을 사용할 때와 그렇지 않을 때가 있습니다.
mtcars
subset(mtcars, subset=mpg<20)
mpg 20이하만 뽑아라입니다. 간단하죠? 다른 방식으로는 이렇게 해도 됩니다.
mtcars[mtcars$mpg<20, ]
만약에 mpg 20이하 자료 중에서 열 두 개 (mpg, cyl)만 뽑아라하면
mtcars[mtcars$mpg<20, c('mpg', 'cyl')]
아니면
subset(mtcars, select=c(mpg, cyl), subset=mpg<20)
조건이 2개 이상이면? 아래와 같이
subset(mtcars, subset = (am==1 & mpg>20))
subset을 사용하지 않으면 조금 복잡해보이긴 하는데 아래처럼 하면 됩니다.
mtcars[(mtcars$am==1) & (mtcars$mpg>20), ]
하나 참고로, mpg가 20이상인 자료의 평균 mpg는 얼마인가 계산하고 싶다면? 아래처럼
mean(subset(mtcars, subset=mpg>20)$mpg)
혹은
mean(mtcars[mtcars$mpg>20, 'mpg'])
반응형
'R > R basic' 카테고리의 다른 글
R에 지금 열려 있는 데이터 지우기 (2) | 2021.04.07 |
---|---|
내 변수의 속성은 무엇인가 str(), is.factor(), is.numeric() (0) | 2021.04.06 |
R graph 결과를 pdf, jpeg 등으로 바로 export하려면? (0) | 2020.05.19 |
많은 칼럼 속성을 변환 시켜줄 경우: 칼럼 번호가 중요한 이유 (0) | 2020.05.16 |
이름이 비슷한 csv 파일을 불러서 통합해서 하나의 데이터프레임을 만들 경우 (0) | 2020.05.08 |