ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [ADsP 요약] [ADsP 3과목] III. 데이터 분석 (1)
    자격증/데이터분석 준전문가 (ADsP) 2021. 5. 17. 19:57
    728x90
    반응형

     

     

    데이터분석 준전문가 ADsP 3과목 요약

     

    [3과목] 데이터 분석

    I. R기초와 데이터 마트

        01. R기초

        02. 데이터 마트

        03. 데이터 탐색

     

     

     



     

     

    I. R기초와 데이터 마트

    01. R 기초  —  1. 분석 기획


    [1] R , R Studio

    (1) R  |  오픈소스 통계분석 도구

    • 복잡한 통계기법을 폭넓게 다룰 수 있음
    • 데이터 시각화에 최적화된 환경
    • 다양한 공개 논문 및 자료, 커뮤니티

     

    (2) R Studio  |  R 통합 개발 환경 (IDE)

    • 작성된 함수에 따라 데이터 분석, 결과, 시각화를 사용자에게 즉시 보여줌
    • 기본구성: R 스크립트 창, 콘솔 창, 환경과 히스토리, 기타
    R 스크립트 창 (Script) 콘솔 창 (Console) Environment, History 기타
    - 왼쪽 상단
    - 명령문 작성
    - 라인,블록단위로 문장실행
    - 왼쪽 하단
    - 명령문 작성, 실행
    - 오류, 결과 확인
    - 오른쪽 상단
    - 환경: 생성된 변수, 함수 등
    - 히스토리: 과거 명령문
    - 현재 작업 중인 파일
    - 호출된 패키지
    - 시각화 데이터, 도움말 등

     

     

    (3) R 데이터 타입  |  문자형, 숫자형, 논리형, NaN, NA, NULL

    • class 함수: 데이터 타입이 무엇인지 반환해줌
    문자형 타입 character 숫자형 타입 (계산 가능) 논리형 타입 logical NaN, NA, NULL
    - (쌍)따옴표로 표시 - 숫자형 numeric
    - 실수 double, 정수 integer
    - 복소수 complex
    - 무한대 Inf, -Inf
    - 참 TRUE
    - 거짓 FALSE
    - NaN: 숫자가 아님 (오류)
    - NA: 결측값 (공간 차지 O)
    - NULL: 결측값 (공간 차지 X)

     

     

     


     

     

    01. R 기초  —  2. R 기본 문법


    [1] 연산자  |  대입, 비교, 산술, 기타

    대입 연산자 비교 연산자 산술 연산자 기타 연산자
    변수에 값을 할당 - 변수, 숫자, 문자, 논리값 비교
    - NA: 어떤것과 비교해도 NA
    두 숫자형 타입의 계산 논리값을 계산하기 위함
    <-, <<-, =
    ->, ->>
    ==, >, =>, <, =<
    is.numeric, is.chararter,
    is.logical, is.na, is.null, ...
    +, -, *, /, ^, **, exp()
    %/% (몫),
    %% (나머지)
    - 부정연산자 ! : 반대되는 값
    - AND연산자 & : 둘다 참
    - OR연산자 | : 둘중하나 참

     

     

    [2] R 데이터 구조  |  벡터, 행렬, 배열, 리스트, 데이터프레임

    벡터 Vector 행렬 Matrix 배열 Arrary 리스트 List 데이터프레임 
    - 1차원 데이터구조
    - 같은타입 여러데이터
    - 1개의 행으로 저장
    - c 를 사용하여 묶음
    - 2차원 구조의 벡터
    - 같은타입 여러데이터
    - 다른타입→자동변환
    - matrix or dim
    - 3차원 이상의 벡터
    - 같은타입 여러데이터
    - 몇 차원의 구조인지
      dim 옵션에 명시
    데이터 타입, 구조와
    상관없이 모든 것을
    저장 가능한 자료구조
    (성분간 이질적인 특징)
    - 2차원 구조
    - 관계형 데이터구조
    - 여러 개의 벡터
    - 열마다 다른타입 가능
    - 콤마 c(1, 2, 3)
    - 콜론 c(1 : 5)
    - matrix(c(1:6),
                     nrow=2)

    - dim(v1) <- c(2,3)
    a1 <- arrary( c(1:12),
    dim=c(2,3,2))
    L1 <- list()
    L1[[1]] <- 10
    L1[[2]] <- "test"
    v1 <- c(1, 2, 3)
    v2 <- c('A', 'B', 'C')
    df<-data.frame(v1,v2)

     

     

    [3] R 내장함수  |  기본함수, 통계함수

    기본함수 기능 통계함수 기능
    help() or ? 함수들에 대한 도움말 sum() 합계
    paste(문자열1, 문자열2) 문자열을 이어붙임 mean() 평균
    seq(시작값, 끝값, 간격) 수열 생성 median() 중앙값
    rep(데이터, 반복횟수) 데이터를 반복 var(), sd() 표본분산, 표준편차
    rm(변수) 대입연산자로 생성된 변수삭제 max(), min() 최댓값, 최솟값
    ls() 현재 생성된 변수들의 리스트 range() 최댓값과 최솟값 (범위)
    print() 콘솔창에 값을 출력 summary() 요약값

     

     

    [4] R 데이터 핸들링  |  이름 변경, 데이터 추출, 데이터 결합

    데이터 이름 변경 데이터 추출 데이터 결합
    2차원 이상의 데이터 구조는
    행, 열의 이름 지정 가능
    - 인덱싱 지원
    - [ ] : 행,열 이름으로 데이터 추출
    - rbind : 행으로 결합
    - cbind : 열로 결합
    - colnames(m1) <- c('A', 'B', 'C')
    - rownames(m1) <- c('r1', 'r2')
    - df1 [2], df1 ['A']
    - df1 $ B (원하는 열의 데이터 추출)
    - 행의 수, 열의 수가 같아야 결합 가능
    - 벡터-벡터 결합은 재사용규칙 적용

     

     

    [5] 제어문  |  반복문, 조건문(if-else), 사용자 정의함수

    • 주석: 실행되지 않는 문장 (# 로 표시함)
      - 코드, 함수를 설명하기 위함
    반복문 조건문 (if-else) 사용자 정의함수 (function)
    - 특정 부분 코드를 반복 수행
    - for, while
    - 참, 거짓에 따라 수행여부를 결정
    - if() {} else if() {} else {}
    - 하나의 함수로 명명하여 저장
    - 필요할 때 호출하여 사용

     

     

    [6] 자주 사용되는 함수들

    전처리 함수 기능 정규분포 함수 기능
    head(), tail() 데이터 앞, 뒤 일부분 dnorm() 정규분포의 주어진 값에서 함수 값 구함
    subset() 조건식에 맞는 데이터 추출 rnorm() 정규분포에서 주어진 개수만큼 표본추출
    merge() 특정 열기준 데이터 2개 병합 pnorm() 정규분포에서 주어진 값보다 작을 확률값
    apply() 열/행별로 주어진 함수 적용 qnorm() 정규분포에서 주어진 넓이값을 갖는 x값

     

    표본추출 함수 기능 산점도 함수 기능
    runif() 균일분포에서 특정개수만큼 표본추출 plot() 주어진 데이터의 산점도를 작성
    sample() 주어진 데이터에서 특정개수만큼 표본추출  abline() 산점도에 추가 직선을 작성

     

     

     

     


     

     

    02. 데이터 마트  —  1. 데이터 마트의 이해


    [1] 데이터 마트 DM

    (1) 데이터 마트  |  분석 목적에 맞게 추출한 작은 규모의 데이터 웨어하우스

    데이터 웨어하우스와 데이터 마트 데이터 마트란?
    특정 사용자가 관심있는 데이터들을
    주제별, 부서별로 추출하여 모은
    비교적 작은 규모의 데이터 웨어하우스
    데이터 마트 개발이란, 분석 목적별, 주제별, 부서별로
    데이터를 수집, 변형하여 한 곳에 모으는 작업

     

     

    (2) 데이터 전처리  |  데이터 정제 + 분석 변수 처리

    정제 Cleansing 분석 변수 처리 요약변수 파생변수
    - 결측값 처리
    - 이상값 처리
    - 변수선택, 변수변환, 차원축소
    - 파생변수 생성, 불균형 처리
    원래 데이터에서 기본적인
    통계 자료를 추출한 변수
    특정 목적을 가지고 생성한,
    조건을 만족하는 변수

     

     

     


     

     

    02. 데이터 마트  —  2. 데이터 마트 개발을 위한 R패키지 활용


    [1] 4가지 패키지: reshape, sqldf, plyr, data.table

    reshape 패키지 sqldf 패키지 plyr 패키지 data.table 패키지
    melt 함수: 데이터를
    특정변수 기준으로 녹여서
    나머지 변수에 대해
    세분화된 데이터를 생성함
    표준 SQL 문장을 활용하여
    R 데이터프레임을 다룰 수
    있도록 해주는 패키지
    apply 함수를 기반으로
    데이터를 분리, 다시 결합하는
    필수적인 데이터 처리 기능
    데이터 테이블: 특정 칼럼별로
    주솟값을 가지는 인덱스를 생성
    → 연산 및 검색을 빠르게
         수행 가능한 데이터구조
    cast 함수: melt에 의해
    녹은 데이터를 요약, 가공
    (ex)
    sqldf( 'select * from df1' )
    (ex) ddply (df1, "col1",
    transform, avg=mean(col2))
    기존 데이터프레임보다
    4배~100배까지 빠른 속도

     

     

     


     

     

    03. 데이터 탐색  —  1. 탐색적 데이터 분석 (EDA)


    [1] 탐색적 데이터 분석 (EDA; Exploratory Data Analysis)

    (1) EDA | 데이터를 이해하고 의미있는 관계를 찾아내기 위하여, 통곗값과 분포 등을 시각화 및 분석하는 것

    • 데이터 특성을 이해
    • summary() : 기초 통계량 도출
    • str() : 데이터 구조 파악

     


     

     

    03. 데이터 탐색  —  2. 결측값 처리


    [1] 결측값 | 존재하지 않는 데이터

    (1) 결측값

    • NA(Not Available), null, 공백 등으로 표현
    • 삭제하는 것이 일반적임 / 결측값이 의미를 가지는 경우도 존재함
    • 결측값 처리 패키지: Amelia, DMwR2
      - Amelia의 함수 missmap: 데이터프레임 내 결측값의 분포와 위치를 시각화

     

     

    (2) 결측값 대치 방법 | 단순 대치법, 평균 대치법, 단순 확률 대치법, 다중 대치법

    단순 대치법 평균 대치법 단순 확률 대치법 다중 대치법
    - 결측값이 존재하는
      데이터를 삭제한다
    - 결측값↑데이터손실↑
    불완전 자료 → 완전한 자료
    데이터를 대표할 수 있는
    평균 or 중앙값으로 대치함
    - 평균 대치법에서 추정량 표준
      오차의 과소추정 문제 보완

    - K 최근접 이웃 알고리즘 활용
    여러 번의 대치를 통해
    n개의 임의 완전자료 생성
    complete.cases()
    - 결측값 존재하면 FALSE
    - 존재하지 않으면 TRUE
    - 비조건부: 평균값 대치
    DMwR2 central Imputation

    - 조건부: 회귀분석 활용
    - knnImputation() 함수:
      주변 K개 데이터 중, 가장 많은
      데이터로 대치하는 방법
    3단계 구성
    결측값 대치-분석-결합

     

     


     

     

    03. 데이터 탐색  —  3. 이상값 처리


    [1] 이상값 | 다른 데이터에 비해, 극단적으로 크거나 작은 값

    • 이상값 원인: 데이터 입력자의 실수 or 설문 응답자의 악의적인 의도

     

    (1) 이상값 판단 | ESD, 사분위수

    ESD (μ-3σ ~ μ+3σ) 사분위수 (Q1-1.5×IQR ~ Q3+1.5×IQR)
    평균으로부터 표준편차 3만큼 떨어진 값들을
    이상값으로 인식 (전체 데이터의 0.3%)
    - IQR = Q3 - Q1 (75% - 25%에 해당하는 값)
    - 상자그림(박스플롯)의 아웃라이어 (수염 바깥의 값들)

     

     


     

    참고도서: 2021 ADsP 데이터분석 준전문가_위키북스

     

     

     

    728x90
    반응형