공부 페이지
294 페이지 ~ 297 페이지
배운 개념
부등호 논리연산으로 정보 찾기
희망 연봉이 4,000만원이라면, 이 회사에 있는 10,000명 중 상위 몇 %나 될지 궁금할 때는, 부등호를 사용해 논리연산을 하면 된다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | > Sys.setlocale('LC_ALL' , 'ko_KR.UTF-8') [1] "ko_KR.UTF-8/ko_KR.UTF-8/ko_KR.UTF-8/C/ko_KR.UTF-8/C" > setwd("~/Documents/Workspace/R/Practice/data") > data = read.csv('salary_data.csv') > salary = data$salary > salary > 4000 [1] FALSE TRUE FALSE FALSE TRUE FALSE FALSE TRUE FALSE FALSE FALSE FALSE TRUE TRUE FALSE FALSE FALSE FALSE FALSE TRUE (이하 생략) > sum(salary > 4000) [1] 2700 > mean(salary > 4000) [1] 0.27 | cs |
부등호 논리연산으로 판단한 것을 sum() 함수로 모두 더하면 조건과 일치하는 관측치의 수를 계산할 수 있다.
그런 다음 평균울 계산하는 mean() 함수를 활용하면 전체 중 조건에 일치하는 관측치의 비율을 계산할 수 있다.
즉, 연봉 4,000만원은 상위 27% 정도 된다. 다만, 이 데이터는 중도 퇴사거나 중도 입사자 등의 연말정산 정보도 포함되어 있어 과하게 작은 값들이 있다는 것을 주의해야 한다. 실제 연봉의 중앙값 혹은 평균값 등은 계산된 것보다 더 높을 수 있다.
상자그림
1 | > boxplot(salary, range=100) | cs |
전체 데이터를 25%씩 나눈 4개의 구간에 각각 2,500명이 들어갔다. 아래쪽에 있는 구간 3개는 아주 좁은 반면 제일 위에 있는 구간 1개는 아주 넓다. 즉, 상위 25%의 연봉은 큰 차이로 높고, 하위 75%의 연봉은 서로 비슷한 수준이라는 뜻이다.
이번에는 range=100 옵션을 지운 결과다.
1 | > boxplot(salary) | cs |
이전 상자 그림에서는 가장 높은 가로선은 최댓값과 똑같은 8억 너머에 있었다. 이제는 계속 내려와 1억 언저리에 있다. 마지막 가로선보다 높은 관측치는 점으로 표시된다. 이 값들을 이상치(Outlier) 라고 부른다.
조금 일반적인 연봉 금액대를 살펴보기 위해 연봉 1억 미만의 관측치만 선택해서 다시 상자그림을 그려보자
1 2 3 | > salary_10000 = salary[salary < 10000] > boxplot(salary_10000) | cs |
앞의 상자 그림보다는 훨씬 보기가 좋아졌다.
다음 시간에 배울 것
'R > R 프로젝트' 카테고리의 다른 글
[ 이토록 쉬운 통계&R 100일 프로젝트 ] 55일차 (0) | 2018.07.10 |
---|---|
[ 이토록 쉬운 통계&R 100일 프로젝트 ] 54일차 (0) | 2018.07.09 |
[ 이토록 쉬운 통계&R 100일 프로젝트 ] 52일차 (0) | 2018.07.07 |
[ 이토록 쉬운 통계&R 100일 프로젝트 ] 51일차 (0) | 2018.07.06 |
[ 이토록 쉬운 통계&R 100일 프로젝트 ] 50일차 (0) | 2018.07.05 |
댓글