기초 통계 분석은 데이터를 이해하고 설명하기 위한 첫 번째 단계로, 데이터의 주요 특성을 요약하고 시각화하는 데 중점을 둡니다.
R 프로그래밍에서는 다양한 기본 함수를 사용해 이러한 분석을 쉽게 수행할 수 있습니다.
기초 통계 분석
기본 통계량 계산
- 평균(mean): 데이터의 중심 위치를 나타내며, R에서는 mean() 함수를 사용해 계산합니다.
mean_value <- mean(data_vector)
- 중앙값(median): 데이터를 크기 순으로 정렬했을 때 중앙에 위치한 값으로, 이상치에 영향을 덜 받습니다. R에서는 median() 함수로 계산합니다.
median_value <- median(data_vector)
- 분산(var) 및 표준편차(sd): 데이터가 평균을 중심으로 얼마나 퍼져 있는지를 나타냅니다. 분산은 var(), 표준편차는 sd() 함수로 계산합니다.
variance <- var(data_vector)
std_dev <- sd(data_vector)
- 범위(range): 데이터의 최소값과 최대값을 반환하며, 데이터의 전체 범위를 나타냅니다. range() 함수를 사용합니다.
data_range <- range(data_vector)
- 사분위수(quantile): 데이터의 분포를 네 부분으로 나누는 값을 계산하며, quantile() 함수를 통해 각 사분위수를 얻을 수 있습니다.
quantiles <- quantile(data_vector)
기술통계
- 요약 통계량(summary): summary() 함수는 데이터의 기초 통계량을 한 번에 제공하는 유용한 함수입니다. 주어진 데이터 벡터나 데이터 프레임에 대해 최소값, 1사분위수, 중앙값, 평균, 3사분위수, 최대값 등을 출력합니다.
summary_statistics <- summary(data_vector)
- 빈도표(table): 범주형 데이터의 각 범주에 속하는 데이터의 빈도를 계산할 수 있습니다. table() 함수를 사용해 특정 범주형 변수의 분포를 쉽게 확인할 수 있습니다.
frequency_table <- table(factor_variable)
확률 분포
확률 분포는 통계학에서 데이터가 어떻게 분포되어 있는지를 설명하는 중요한 개념입니다.
R에서는 다양한 확률 분포를 다루는 함수들이 제공되며, 이들 함수는 랜덤 데이터를 생성하거나 특정 확률 계산을 수행하는 데 유용합니다.
이번 목차에서는 정규 분포, 이항 분포, 포아송 분포에 대해 각각의 R 함수를 설명하겠습니다.
정규 분포 (Normal Distribution)
정규 분포는 연속 확률 분포 중 가장 중요한 분포 중 하나로, 종 모양의 곡선을 그리며, 평균을 중심으로 대칭적인 형태를 가집니다. R에서는 다음 네 가지 함수로 정규 분포를 다룰 수 있습니다:
- rnorm(): 정규 분포를 따르는 난수를 생성합니다.
- 예시: 평균이 0이고 표준편차가 1인 정규분포에서 100개의 난수를 생성
random_values <- rnorm(100, mean = 0, sd = 1
- dnorm(): 정규 분포의 확률 밀도 함수 값을 계산합니다.
- 예시: 특정 값에 대해 확률 밀도를 계산
density_value <- dnorm(0, mean = 0, sd = 1)
- pnorm(): 정규 분포의 누적 분포 함수 값을 계산합니다. 특정 값이 주어졌을 때, 그 값 이하의 확률을 반환합니다.
- 예시: 1 이하의 누적 확률 계산
cumulative_prob <- pnorm(1, mean = 0, sd = 1)
- qnorm(): 정규 분포의 분위수 값을 계산합니다. 주어진 확률에 해당하는 값을 반환합니다.
- 예시: 누적 확률이 0.95일 때의 분위수 값 계산
quantile_value <- qnorm(0.95, mean = 0, sd = 1)
이항 분포 (Binomial Distribution)
이항 분포는 독립적인 이항 시행에서 성공 횟수를 나타내는 이산 분포입니다. R에서는 이항 분포와 관련하여 다음 함수들을 사용할 수 있습니다:
- rbinom(): 이항 분포를 따르는 난수를 생성합니다.
- 예시: 10번의 시행에서 성공 확률이 0.5인 경우 100개의 난수 생성
random_binom <- rbinom(100, size = 10, prob = 0.5)
- dbinom(): 이항 분포의 확률 질량 함수 값을 계산합니다. 특정 성공 횟수에 대한 확률을 반환합니다.
- 예시: 성공 횟수가 5일 확률 계산
prob_5_success <- dbinom(5, size = 10, prob = 0.5)
- pbinom(): 이항 분포의 누적 분포 함수 값을 계산합니다. 특정 성공 횟수 이하의 확률을 반환합니다.
- 예시: 성공 횟수가 5 이하일 확률 계산
cumulative_prob <- pbinom(5, size = 10, prob = 0.5)
- qbinom(): 이항 분포의 분위수 값을 계산합니다. 주어진 확률에 해당하는 성공 횟수를 반환합니다.
- 예시: 누적 확률이 0.75일 때의 성공 횟수 계산
quantile_value <- qbinom(0.75, size = 10, prob = 0.5)
포아송 분포 (Poisson Distribution)
포아송 분포는 일정한 시간이나 공간에서 드물게 발생하는 사건의 횟수를 모델링하는 데 사용됩니다. R에서는 포아송 분포를 다루기 위해 다음 함수들을 사용할 수 있습니다:
- rpois(): 포아송 분포를 따르는 난수를 생성합니다.
- 예시: 평균 발생률이 4인 포아송 분포에서 100개의 난수 생성
random_pois <- rpois(100, lambda = 4)
- dpois(): 포아송 분포의 확률 질량 함수 값을 계산합니다. 특정 사건 발생 횟수에 대한 확률을 반환합니다.
- 예시: 사건이 2번 발생할 확률 계산
prob_2_occurrences <- dpois(2, lambda = 4)
- ppois(): 포아송 분포의 누적 분포 함수 값을 계산합니다. 특정 횟수 이하의 사건이 발생할 확률을 반환합니다.
- 예시: 사건이 2번 이하로 발생할 확률 계산
cumulative_prob <- ppois(2, lambda = 4)
- qpois(): 포아송 분포의 분위수 값을 계산합니다. 주어진 확률에 해당하는 사건 발생 횟수를 반환합니다.
- 예시: 누적 확률이 0.9일 때의 사건 발생 횟수 계산
quantile_value <- qpois(0.9, lambda = 4)
이번 글에서는 기초 통계 분석과 확률 분포에 대해 살펴보았습니다. 이러한 통계 기법들은 데이터를 이해하고 분석하는 데 있어 기본적인 도구로 사용됩니다. 다음 글에서는 가설 검정과 회귀 분석에 대해 다루며, 더 심화된 데이터 분석 기법을 소개할 예정이니 많은 기대 부탁드립니다!
감사합니다!
'프로그래밍 언어 > R' 카테고리의 다른 글
19. R에서의 데이터 전처리 및 변환 1️⃣ (결측값 처리와 데이터 변환 및 정제) (0) | 2024.09.25 |
---|---|
18. R을 활용한 기본 통계 2️⃣ (가설 검정 및 회귀 분석) (1) | 2024.09.16 |
16. R에서의 객체 지향 프로그래밍 (Class) (0) | 2024.09.10 |
15. R 함수를 이용한 데이터 시각화 3️⃣ (기타 시각화 기법 및 그래프 저장) (0) | 2024.09.07 |
14. R 함수를 이용한 데이터 시각화 2️⃣ (ggplot2 패키지) (0) | 2024.09.05 |
데이터 분석을 공부하고 카페를 열심히 돌아다니는 이야기
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!