본 보고서는 미다팀 데이터와 IPTV 데이터 간의 시청률 동등성을 검증하기 위한 최종 분석 결과를 기술합니다. 채널 번호 매핑 이슈를 해결하기 위해 채널명을 기준으로 1:1 매핑을 수행하였으며, 데이터 전처리, 시각화, 기초 통계 검정, 그리고 최종적으로 개별 채널 수준의 동등성 검정(Individual Equivalence Test)을 수행하여 대체 가능성을 판단합니다.
Code
if (!require("readxl")) install.packages("readxl")
Loading required package: readxl
Code
if (!require("dplyr")) install.packages("dplyr")
Loading required package: dplyr
Attaching package: 'dplyr'
The following objects are masked from 'package:stats':
filter, lag
The following objects are masked from 'package:base':
intersect, setdiff, setequal, union
Code
if (!require("TOSTER")) install.packages("TOSTER")
Loading required package: TOSTER
Code
if (!require("tolerance")) install.packages("tolerance")
Loading required package: tolerance
tolerance package, version 3.0.0, Released 2024-04-18
This package is based upon work supported by the Chan Zuckerberg Initiative: Essential Open Source Software for Science (Grant No. 2020-255193).
Code
if (!require("ggplot2")) install.packages("ggplot2")
Paired t-test
data: df_clean$Mida and df_clean$IPTV
t = 0.77289, df = 253, p-value = 0.4403
alternative hypothesis: true mean difference is not equal to 0
95 percent confidence interval:
-0.01461916 0.03350585
sample estimates:
mean difference
0.009443343
4.2 Wilcoxon Signed Rank Test (윌콕슨 부호 순위 검정)
검정 내용: 정규성이 충족되지 않을 경우를 대비한 비모수적 중앙값 차이 검정.
가설:\(H_0: Median_{diff} = 0\) vs \(H_1: Median_{diff} \neq 0\)
검정 결과: P-value > 0.05
결과 해석: 귀무가설을 기각하지 못했습니다. 비모수적 관점에서도 두 데이터의 분포 위치(Location)에는 유의미한 차이가 없음이 재확인되었습니다.
Wilcoxon signed rank test with continuity correction
data: df_clean$Mida and df_clean$IPTV
V = 16171, p-value = 0.9857
alternative hypothesis: true location shift is not equal to 0
4.3 Shapiro-Wilk Normality Test (Raw Data)
검정 내용: 원본 차이 데이터(\(D\))가 정규분포를 따르는지 확인.
가설:\(H_0\): 정규분포를 따른다 vs \(H_1\): 따르지 않는다.
검정 결과: P-value > 0.05
결과 해석: 귀무가설을 기각하지 못했습니다. 비모수적 관점에서도 두 데이터의 분포 위치(Location)에는 유의미한 차이가 없음이 재확인되었습니다.
Code
print(shapiro.test(x))
Shapiro-Wilk normality test
data: x
W = 0.75892, p-value < 2.2e-16
5. Log-Difference Normality Check
5.1 검정 개요
검정 내용 및 절차: 데이터 분포의 정규성을 확인하기 위해 Shapiro-Wilk 검정을 수행합니다. 특히, 추후 진행할 TOST 분석의 가정 충족 여부를 확인하기 위해 원본 차이(\(D\))뿐만 아니라 로그 차이(\(\log(\text{Mida}) - \log(\text{IPTV})\))에 대해서도 검정을 진행했습니다.
결과 해석: 원본 데이터와 로그 변환 데이터 모두 정규성 가정을 만족하지 않습니다. 따라서, 이후 진행되는 동등성 분석에서는 로그 변환 없이 원본 데이터를 사용하되, 정규성에 민감하지 않은 방법(Tolerance Interval의 Howe’s Method 등)을 적용합니다.
6. Equivalence Test 1: TOST (Mean Equivalence)
6.1 검정 개요
검정 내용 및 절차: 두 그룹의 평균 차이가 사전에 설정한 동등성 경계(\(-\delta, \delta\)) 내에 존재하는지 확인하는 검정입니다. 두 개의 단측 검정(Two One-Sided Tests)을 동시에 수행하여 둘 다 유의할 경우 동등하다고 판단합니다.
6.2 가설 설정
귀무가설 (\(H_{0}\)): 평균 차이가 설정된 범위 밖이다 (\(\mu_{diff} \le -\delta\) 또는 \(\mu_{diff} \ge \delta\)).
대립가설 (\(H_{1}\)): 평균 차이가 설정된 범위 안이다 (\(-\delta < \mu_{diff} < \delta\), 동등함).
Delta: 0.01
One Sample t-test
The equivalence test was non-significant, t(253) = -0.046, p = 0.48
The null hypothesis test was non-significant, t(253) = 0.773, p = 0.44
NHST: don't reject null significance hypothesis that the effect is equal to zero
TOST: don't reject null equivalence hypothesis
TOST Results
t df p.value
t-test 0.77289 253 0.440
TOST Lower 1.59133 253 0.056
TOST Upper -0.04556 253 0.482
Effect Sizes
Estimate SE C.I. Conf. Level
Raw 0.009443 0.01222 [-0.0107, 0.0296] 0.9
Hedges's g 0.048351 0.06278 [-0.0547, 0.1513] 0.9
Note: SMD confidence intervals are an approximation. See vignette("SMD_calcs").
Delta: 0.02
One Sample t-test
The equivalence test was non-significant, t(253) = -0.86, p = 0.19
The null hypothesis test was non-significant, t(253) = 0.773, p = 0.44
NHST: don't reject null significance hypothesis that the effect is equal to zero
TOST: don't reject null equivalence hypothesis
TOST Results
t df p.value
t-test 0.7729 253 0.440
TOST Lower 2.4098 253 0.008
TOST Upper -0.8640 253 0.194
Effect Sizes
Estimate SE C.I. Conf. Level
Raw 0.009443 0.01222 [-0.0107, 0.0296] 0.9
Hedges's g 0.048351 0.06278 [-0.0547, 0.1513] 0.9
Note: SMD confidence intervals are an approximation. See vignette("SMD_calcs").
Delta: 1e-04
One Sample t-test
The equivalence test was non-significant, t(253) = 0.76, p = 0.78
The null hypothesis test was non-significant, t(253) = 0.773, p = 0.44
NHST: don't reject null significance hypothesis that the effect is equal to zero
TOST: don't reject null equivalence hypothesis
TOST Results
t df p.value
t-test 0.7729 253 0.440
TOST Lower 0.7811 253 0.218
TOST Upper 0.7647 253 0.777
Effect Sizes
Estimate SE C.I. Conf. Level
Raw 0.009443 0.01222 [-0.0107, 0.0296] 0.9
Hedges's g 0.048351 0.06278 [-0.0547, 0.1513] 0.9
Note: SMD confidence intervals are an approximation. See vignette("SMD_calcs").
Delta: 0.05
One Sample t-test
The equivalence test was significant, t(253) = -3.3, p < 0.01
The null hypothesis test was non-significant, t(253) = 0.773, p = 0.44
NHST: don't reject null significance hypothesis that the effect is equal to zero
TOST: reject null equivalence hypothesis
TOST Results
t df p.value
t-test 0.7729 253 0.44
TOST Lower 4.8651 253 < 0.001
TOST Upper -3.3193 253 < 0.001
Effect Sizes
Estimate SE C.I. Conf. Level
Raw 0.009443 0.01222 [-0.0107, 0.0296] 0.9
Hedges's g 0.048351 0.06278 [-0.0547, 0.1513] 0.9
Note: SMD confidence intervals are an approximation. See vignette("SMD_calcs").
결과 해석: 귀무가설을 기각하지 못했습니다. 이는 미다팀과 IPTV 간의 차이가 특정 채널에서만 튀거나 왜곡되지 않았으며, 전체적으로 일관된 품질을 유지하고 있음을 강력하게 시사합니다.
8. Equivalence Test 3: Individual Equivalence Test (Final)
8.1 검정 개요
검정 내용 및 절차:Tolerance Interval(허용 구간) 방법을 사용하여, 전체 채널의 95%가 포함되는 실제 오차 범위를 계산합니다. 계산된 범위 $[L_{calc}, U_{calc}]$가 우리가 목표로 하는 허용 한계(Target Margin, \(\pm 0.5\%p\)) 내에 들어오는지 검증합니다.
8.2 가설 설정 (두 귀무가설을 모두 기각해야 동등함)
가설 종류
내용
의미 (Containment Logic)
귀무가설 1 (\(H_{10}\))
\(q_{1-p/2} \le L\)
상위 꼬리가 목표 하한보다 낮다
대립가설 1 (\(H_{11}\))
\(q_{1-p/2} > L\)
상위 꼬리가 목표 하한보다 높다 (기각해야 함)
귀무가설 2 (\(H_{20}\))
\(q_{p/2} \ge U\)
하위 꼬리가 목표 상한보다 크거나 같다
대립가설 2 (\(H_{21}\))
\(q_{p/2} < U\)
하위 꼬리가 목표 상한보다 작다 (기각해야 함)
Code
# 6. Individual Equivalence Test (Quantile TOST)# 목표 동등성 경계 설정 (Target Bounds)Target_L <--0.5Target_U <-0.5# 허용 구간(Tolerance Interval) 계산# Howe Method 사용, 정규성 불만족으로 log.norm = FALSE 적용tol_result <-normtol.int(x = x, alpha =0.05, P =0.95, side =2, method ="HE", log.norm =FALSE)Calc_L <- tol_result[1, "2-sided.lower"]Calc_U <- tol_result[1, "2-sided.upper"]# 결과 출력cat(sprintf("Calculated 95%% Tolerance Interval: [%.5f, %.5f]\n", Calc_L, Calc_U))
# 가설 검정 (Hypothesis Testing)# H10: q_{1-p/2} <= L (하한 검정) -> 기각 시 성공reject_H10 <- Calc_L >= Target_L# H20: q_{p/2} >= U (상한 검정) -> 기각 시 성공reject_H20 <- Calc_U <= Target_U# 최종 결론 도출if (reject_H10 && reject_H20) {cat("\nFinal Result: PASS (Individually Equivalent)\n")cat(" 계산된 구간이 목표 범위 내에 포함되므로, 두 데이터는 개별 채널 수준에서 동등합니다.\n")} else {cat("\nFinal Result: FAIL (Not Equivalent)\n")cat(" 계산된 구간이 목표 범위를 벗어납니다.\n")}
Final Result: PASS (Individually Equivalent)
계산된 구간이 목표 범위 내에 포함되므로, 두 데이터는 개별 채널 수준에서 동등합니다.
8.3 결과 해석
검정 결과:
계산된 95% 허용 구간: \([-0.403, 0.422]\)
목표 동등성 경계: \([-0.5, 0.5]\)
판정: 계산된 구간이 목표 경계 내에 완전히 포함되므로, 두 귀무가설 모두 기각 (\(P < 0.05\)).
결과 해석: 통계적으로 전체 채널의 95% 이상이 오차 범위\(\pm 0.42\%p\) 이내에서 일치함이 입증되었습니다. 따라서, 허용 오차 \(\pm 0.5\%p\) 기준 하에서 미다팀 데이터는 IPTV 데이터와 개별 채널 수준에서 동등하며, 대체 가능합니다.
9. 최종 결론 (Final Conclusion)
본 연구는 미다팀 시청률 데이터를 IPTV 데이터로 대체할 수 있는지에 대한 통계적 타당성을 검증하였습니다. 데이터 전처리부터 다각도의 통계 검정을 수행한 최종 결론은 다음과 같습니다.
9.1 데이터 정합성 및 일관성
매핑 신뢰성: 채널명을 Key로 활용한 1:1 매핑을 통해 데이터의 정합성을 확보하였습니다.
데이터 분포: Global Equivalence Test 결과(\(P > 0.05\)), 두 데이터 간의 차이는 특정 채널에 편향되거나 구조적인 이상치(Outlier) 없이 무작위 오차(Random Noise) 수준의 일관성을 유지하고 있음이 확인되었습니다.
9.2 동등성 검증 요약
평균 동등성 (Mean Equivalence): 전체적인 평균 차이는 0에 매우 근접(0.009)하며, 5%p 수준에서는 동등하지만 1~2%p의 초정밀 기준에서는 차이가 존재할 수 있음을 확인했습니다.
개별 동등성 (Individual Equivalence): 가장 보수적인 기준인 Quantile TOST 수행 결과, 95%의 채널이\(\pm 0.42\%p\) 이내의 오차를 가지는 것으로 나타났습니다.
9.3 최종 제언
실무적으로 **시청률 오차 \(\pm 0.5\%p\)**를 허용 가능한 수준으로 간주한다면, 미다팀 데이터는 IPTV 데이터와 통계적으로 동등하며, 이를 대체하여 사용하여도 무방하다고 결론 내립니다.