Data Analysis/R

R / 6장 데이터 기술통계

Bay Im 2023. 12. 15. 17:31
  • 기술 통계
    • 수집한 자료로 정리, 표현, 요약, 해석 등을 통해 자료의 특성을 규명하는 기법으로 현재의 현상을 기술하거나 설명하는 것
  • 기술 통계 기법
    • 빈도 분석: 범주형 자료의 분포적 특성 파악
    • 기술 분석: 연속형 자료의 주요 특성 값 파악
    • 교차 분석: 범주형 자료의 두 개 이상의 변수에 대해 교차 빈도 분석
    • 다차원 척도법: 자료 간의 근접성 시각화하여 패턴이나 구조 파악. 유사성, 비유사성 측정하여 다차원 공간에 점으로 표현
    • 그룹 분석: 범주형 자료별 그룹 함수 적용한 기법
    • 탐색적 자료 분석 도구: 주어진 자료를 가지고 정보 찾도록 다양한 자료 분석 도구. 산포도, 박스플롯, 히스토그램 같은 그래픽 도구 활용

 

  • 자료 구분
    • 연속형 자료
      • 계산 가능한 수치들로 이루어진 자료로 등간척도나 비율척도 형태의 자료로 분류
      • 등간척도
        • 각 수준의 간격이 동일하지만 0은 없는 척도로, 양적 차이의 덧셈, 뺄셈은 가능하지만 곱셈, 나눗셈은 불가능
      • 비율척도
        • 각 수준의 간격이 동일하면서 0을 가지고, 사칙연산 모두 가능

 

  • 빈도 분석
    • 자료의 특정 변수의 빈도와 비율을 산출하는 분석으로 범주형 변수에 대하여 빈도표를 작성하고, 막대그래프, 파이차트, 히스토그램 같은 그래프를 그리는 분석 방법
    • 자료의 분포현황을 파악하여 분포적 특성을 파악하는 것으로 그래프로 기술하는게 좋음

 

  • R 빈도 분석
    • table()
      • 입력된 벡터에 대하여 범주별 빈도 수 산출
    • table(질적벡터, 질적벡터)
      • 질적벡터 분할표
      • 양적 → 질적으로 변환시 ifelse 사용
        • ifelse(fish_df$weight ≥ 500, “Large”, “Small”)
    • prop.table(table())
      • 입력된 빈도표에 대하여 범주별 백분율 산출(비율 계산)
      • ex)
        • prop.table(table(), margin=1)
        • margin이 1 이면 총행 비율합, 2면 열 비율합
    • descr 패키지의 freq()
      • 빈도 분석 수행 (막대 그래프 출력)
      • plot=F 로 하면 표로 출력
    • addmargins(table())
      • table()의 결과 자료의 주변 합 계산
      • ex)
        • addmargins(table(), margin=1)
        • margin이 1이면 행합, 2면 열합
    • barplot(height(table()), option)
      • 막대 그래프
      • height는 각 막대의 높이, main은 제목, 범례는 legend()
    • legend()
      • 범례 표시
    • pie(table(), main=””, lables=””)
      • 원 그래프

 

  • 기술 분석
    • 연속형 자료의 특성을 쉽게 파악할 수 있도록 묘사하는 것을 목적으로 수집한 자료의 주요 특성을 파악하는 기법
    • 자료의 중심경향성 파악
      • 평균값, 중앙값, 최빈수값
    • 자료의 변동성 측정
      • 최댓값, 최솟값, 범위, 분산, 표준편차, 변동계수, 왜도와 첨도

 

  • 기술 분석 함수
    • length(): 자료수
    • mean(): 평균
      • trim=0.1 이면 위아래로 10%씩 제거
    • median(): 중앙값
    • range(): 범위
    • diff(range()): 최대값 - 최소값
    • which.max(table()): 최빈값
    • var(): 분산
    • sd(): 표준편차
    • sd/mean: 변동계수
    • quantile(): 사분위수 범위
      • 0.25=1사분위수, 0.05=5백분위수, 0.5=50백분위수 (중위수)
      • Q3 - Q1: IQR
      • (Q3 - Q1) / 2: 사분위편차
    • summary()
      • 최소값, 사분위값, 중앙값, 평균, 최대값을 한 번에 파악
    • psych 패키지의 describe() 함수
      • 기술분석 (모든변수)

 

  • 다차원 척도법
    • 개체간 근접성을 시각화하는 통계 기법
    • 자료들 사이의 유사도를 측정하고 이들의 거리를 2차원, 3차원 공간상에 점으로 표현
    • 자료들 간의 거리 계산은 유클리드 거리를 사용 (변수 값들의 차이를 제곱하여 합산한 거리)
    • 주요 함수
      • dist(x)
        • 행렬에 대해서 유클리드 거리 계산
      • cmdscale(x, k=2)
        • 거리를 최대한 유지하며 k차원으로 축소
      • isoMDS(x, k=2): 비계량적 MDS
      • plot(x, type=”n”)
        • 2차원 산점도
      • scatterplot3d 패키지의 scatterplot3d(data_mds$point, type=”h”, pch=2, angle=40)
        • 3차원 산점도
    • 다차원 척도법 자료 생성
      • ex)
      • data ← subset(data, select=c(열이름들))
      • data$열이름 ← as.numeric(as.factor(data$열이름))
    • 다차원 척도법
      • ex)
      • data_mat ← as.matrix(data[, -1])
      • data_dist ← dist(data_mat)
    • 2차원 시각화
      • ex)
      • data_mds ← isoMDS(data_dist)
      • plot(data_mds$point, type=”n”)
      • text(data_mds$point, labels=data$고객)
      • abline()
    • 3차원 시각화
      • isoMDS(data_dist, k=3)
      • scatterplot3d(data_mds$___)

 

  • 그룹 분석
    • 자료를 집단 별로 나눈 그룹에 함수를 적용한 분석 방법
    • 빈도, 그룹별 합계, 평균, 표준편차, 중앙값, 최소값, 최대값 같은 정보들을 제공
    • 패키지
      • dplyr 패키지
    • 주요 함수
      • group_by()
        • 그룹 테이블 생성 후
      • summarise()
        • 분석
        • ex) summarise(group_by(data_frame, 속성1, 속성2, …), 함수1, 함수2,…)
        • ex) summarise(group_by(data, 열이름), n(), sum(열이름), mean(쇼핑액))

 

  • 탐색적 자료 분석 (EDA, Exploratory Data Analysis)
    • 주어진 자료만 가지고 충분한 정보를 찾을 수 있도록 제공된 자료 분석 기법
    • 자료 분석 기법으로 박스 플롯, 산포도, 줄기 잎 도표, 히스토그램, Q-Q 도표 등을 활용
    • 박스 플롯
      • 사분위수를 시각화한 것으로 수치형 자료 파악시 자주 사용
      • 자료의 집합의 범위와 중앙값 빠르게 확인, 이상치가 있는지 확인
      • 주요 함수: boxplot()
    • 산포도(scatter plot)
      • 두 변수 간의 연관성을 파악하기 위해 가로 축과 세로 축에 자료를 점으로 표현
      • 주요 함수
        • plot(x, y, main=””, xlab=””, ylab=””, col=”red, pch=, cex=)
          • ex) plot(iris$Petal.Length, iris$Petal.width)
        • pairs()
          • 여러 개의 변수를 짝지어 한 번에 산점도를 그린다.
    • 줄기 잎 도표(stem and leaf diagram)
      • 줄기에 해당되는 단위를 정하고 그 단위 아래 단위의 자료를 잎의 크기 순서로 배열한 도표
      • 주요 함수
        • stem(x, scale=1)
    • 히스토그램
      • 연속형 자료의 분포를 시각화 (막대그래프)
      • hist()
    • Kernel Density Estimation (KDE)
      • hist(x, probability = T, breaks = 10)
    • Q-Q 도표(Quantile-Quantile Diagram)
      • 데이터가 정규분포와 같은 특정한 분포를 따르는지 시각적으로 검토하는 방법
      • 주요 함수
        • qqnorm(x, …)
        • qqline(x, …)
    • 원 그래프
      • pit(table())

'Data Analysis > R' 카테고리의 다른 글

R / 8장 데이터 통계적 추론 2  (1) 2023.12.15
R / 7장 데이터 통계적 추론 1  (1) 2023.12.15
R / 5장 데이터 전처리  (1) 2023.10.17
R / 4장 R 프로그래밍  (1) 2023.10.17
R / 3장 R 자료관리, 수집  (0) 2023.10.14