R로 데이터 다루기

R에서 dplyr을 이용해 데이터를 추출, 가공하는 방법을 알아봅니다


수강중

1. 데이터 다루기 왜, 그리고 어떻게? (강의소개)

데이터 다루기 왜 필요한가

  • R에 있는 예제 데이터는 데이터 전처리가 끝난 상태이기 때문에 깔끔하고 분석하기 쉽다. 하지만 실제 데이터는 전처리가 되어있지 않다.

oreilly data science survey 결과 (2015년)

  • 급여, 뿐만 아니라 데이터 분석 혹은 데이터 클렌징에서 얼마나 시간이 소비되는지 리포터하고 있다.
  • 데이터를 하루에 4시간 이상, 과도하게 전처리에 소모하는 집단은 급여가 다른 집단에 비해 더 적음을 알 수 있다. 추측하기로는 소프트웨어에서 자동화하지 않고 전처리에 시간을 너무 소비해서, 분석이나 여타 보고서 작성에 시간이 부족할 수도 있다.

잘 정돈된(tidy) 데이터란

  • 행(가로줄): 관찰된 데이터
  • 열(세로)은 성별, 나이, 판매 건수와 같은 같은 변수
  • 하나의 데이터셋에서 결측치는 통일됨
  • 분석에 필요한 모든 데이터가 여러 군데 흩어져있지 않고 하나의 set으로 잘 정리됨. 그렇지 않으면 추후에 변환이 필요.
  • 변환작업을 위해 R에서 제공되는 library : dplyr, data.table, tidyr, reshape

dplyr 왜 써야하나요?

  • 기본 함수보다 빠르다.
  • 여러 함수를 연속해서 사용이 가능하다. (R에서 기본 함수들을 사용해서 동일한 작업을 할 수 있다.
  • 예) 카드 매출 데이터: 전체 데이터에서 강남구만 추출한 다음에 성별로 테이블을 출력하거나, 빈도표, 그래프를 그린다든지 하는 연속적인 작업 시
  • 코드가 연속적으로 나열이 되어있을 때, 가독성이 좋다.
  • 데이터 통합이 쉽다 -예) 회사의 데이터와 외부의 공개된 데이터 통합이 필요한 경우

데이터 다루기

  • 예시 데이터로 전처리 작업을 위해 임의로 데이터를 만들었다.
  • 데이터를 만들 때 주안점:
    • 실제 데이터와 최대한 비슷하게 만들려고함.최대한 깨끗하지 않은 데이터를 반영했다. 대기업에서 컨설팅하거나 데이터 분석을 한 경험을 바탕으로 비슷하게 만들었다.
    • 카드 매출 데이터와 기상청에서 저장하는 양식은 저장하는 사람이 다르므로
      • 예) 카드매출에서 결측치를 @
      • 예) 기상청은 비워놓음
      • 예) 같은 기업 내에서도 결측치를 다루는 방식이 다를 수 있다.
    • 함수와 기업에서의 task를 같이 배울 수 있도록 준비했다.

무엇을 하나요

  • 변수명 바꾸기
    • 변수명 바꾸는 것
    • 변수/필드:성별, 카드 매출
      • 예)변수의 속성 파악하기: 우리가 가진 데이터가 남자가 몇 명이고, 여자가 몇 명인지 그런 속성을 테이블로 출력하기.
      • 예) 년-월-일 붙어있는 데이터를 년/월/일 분리하기.
  • 새로운 변수 만들기
  • 데이터 정렬하기
  • n번째 데이터 추출하기
  • 변수 선택 및 삭제하기
  • 조건 걸어 데이터 추출하기
  • 조합하기
  • 데이터 합치기

ppt 데이터 예시(3개)

  • 점포별 판매 건수 데이터 (일별)
  • 점포와 업종 데이터
  • 구별 기후 데이터 (월별)

dplyr 함수

  • dplyr에서 중요한 메인 함수 5가지: filter, arrange, select, mutate, summarise

  • 함수를 이용해 연습할 task

    • 점포별로 일 판매 건수가 제일 높은 순으로 TOP10을 출력해보세요.
    • 점포별로 월 판매 건수가 제일 높은 순으로 Top10을 출력해보세요.
    • 점포와 업종 코들를 결합하여, 한식 업종에서 점포별로 일 평균 판매 건수를 구해보세요.
    • 강수량 데이터에서 250mm 이상은 상, 50mm~250mm는 중, 50mm 이하는 하로 변환한 후, 강수량 상중하에 따른 업종별 월평균 구매건수를 구해보세요.