본문으로 건너뛰기
🛠️ToolsShed

Z-점수 계산기

Z-점수, 백분위 순위 및 정규분포 확률을 계산합니다.

이 도구 소개

Z점수는 정규분포에서 평균으로부터 몇 표준편차만큼 떨어져 있는지를 측정합니다. 이 지표는 서로 다른 척도의 값을 표준화하기 위한 통계학의 기본 개념이며, 데이터를 비교하고 이상치를 찾으며 확률분포를 이해하는 데 필수적입니다. Z점수는 품질관리, 학업성적 평가, 의학 연구, 금융 분석 등 특정 값이 얼마나 특이하거나 전형적인지 판단해야 하는 모든 분야에서 널리 사용됩니다.

계산기를 사용하려면 데이터 값과 데이터세트의 평균, 표준편차를 입력하면 됩니다. 도구가 Z점수를 즉시 계산하고 해당 백분위수를 표시하여—정규분포에서 당신의 값 아래에 해당하는 비율을 보여줍니다. Z점수를 직접 입력하여 그에 해당하는 백분위수를 찾을 수도 있으므로, 가설검정, 신뢰구간, 확률 조회에 유용합니다. 이는 표준화 시험 점수(SAT, IQ 같은), 서로 다른 지표 간 성능 비교, 제조 공차 평가 시 특히 도움이 됩니다.

Z점수는 당신의 데이터가 정규(종 모양) 분포를 따른다고 가정하므로, 왜곡된 데이터셋의 경우 결과가 정확하지 않을 수 있음을 명심하세요. 계산기는 극값 확률에 대한 통찰력도 제공하여 극단적인 값을 이해하도록 돕습니다. 통계학을 배우는 학생이든, 실험 데이터를 분석하는 연구자든, 품질 지표를 평가하는 전문가든, 이 도구는 복잡한 확률 계산을 즉시 실용적인 통찰력으로 변환합니다.

자주 묻는 질문

코드 구현

import math

def erf(x: float) -> float:
    """Abramowitz & Stegun approximation of the error function."""
    sign = 1 if x >= 0 else -1
    x = abs(x)
    a1, a2, a3, a4, a5 = 0.254829592, -0.284496736, 1.421413741, -1.453152027, 1.061405429
    p = 0.3275911
    t = 1.0 / (1.0 + p * x)
    y = 1.0 - (((((a5 * t + a4) * t) + a3) * t + a2) * t + a1) * t * math.exp(-x * x)
    return sign * y

def normal_cdf(z: float) -> float:
    """Cumulative distribution function of the standard normal."""
    return 0.5 * (1 + erf(z / math.sqrt(2)))

def z_score(value: float, mean: float, std_dev: float) -> float:
    """Calculate Z-score: how many SDs from the mean."""
    if std_dev <= 0:
        raise ValueError("Standard deviation must be positive")
    return (value - mean) / std_dev

# Example
x, mu, sigma = 75, 70, 5
z = z_score(x, mu, sigma)
prob = normal_cdf(z)
print(f"Z-score: {z:.4f}")          # 1.0000
print(f"Percentile: {prob*100:.2f}th")  # 84.13th
print(f"Probability: {prob:.6f}")    # 0.841345

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.