백분위수·Z점수 계산기
데이터셋의 백분위수 순위·Z점수·정규분포 확률 계산.
자주 묻는 질문
코드 구현
def percentile_rank(data: list[float], value: float) -> float:
"""Calculate the percentile rank of a value in a dataset."""
n = len(data)
if n == 0:
return 0.0
count_below = sum(1 for x in data if x < value)
return (count_below / n) * 100
def percentile_value(data: list[float], p: float) -> float:
"""Find the value at the p-th percentile (0-100)."""
if not data:
return 0.0
sorted_data = sorted(data)
index = (p / 100) * (len(sorted_data) - 1)
lower = int(index)
upper = lower + 1
if upper >= len(sorted_data):
return sorted_data[-1]
return sorted_data[lower] + (index - lower) * (sorted_data[upper] - sorted_data[lower])
data = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
print(percentile_rank(data, 75)) # 70.0
print(percentile_value(data, 25)) # 32.5Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.