20260417 TIL

2026. 4. 17. 18:59TIL

📢 오늘의 목표

🚩코드카타를 하면서 기본적인 코딩 역량을 키운다.

🚩통계분석에 대해 배우면서 기존에 배웠던 내용과 어떻게 접목 시킬지 고민한다.

 

🚩라이브 세션을 통해 통계 분석 역량을 키운다.


📅 TIL

❇️라이브 세션

더보기

 

r값 외우면 좋다

 

 

 

 

 

 

 

 

 

단순 선형 회귀는 변수가 하나

 

 

❇️통계학 기초 5주차 

더보기

📊피어슨 상관계수

상관 계수가 0.99이므로 매우 높은 상관 관계를 보여준다!

🗯️피어슨 상관계수

*️⃣두 연속형 변수 간의 선형 관계를 측정하는 지표

 

*️⃣ -1에서 1사이의 값

 

*️⃣ 1은 완전한 양의 선형 관계(거의 동일한 변수), -1은 완전한 음의 선형 관계(거의 반대 변수)

 

*️⃣ 0은 선형 관계가 없음

 

*️⃣ 비선형 관계에서는 상관 없음

🗯️파이썬 실습

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
from scipy.stats import pearsonr
# 예시 데이터 생성
np.random.seed(0)
study_hours = np.random.rand(100) * 10
exam_scores = 3 * study_hours + np.random.randn(100) * 5
# 데이터프레임 생성
df = pd.DataFrame({'Study Hours': study_hours, 'Exam Scores': exam_scores})
# 피어슨 상관계수 계산
pearson_corr, _ = pearsonr(df['Study Hours'], df['Exam Scores'])
print(f"피어슨 상관계수: {pearson_corr}")
# 상관관계 히트맵 시각화
sns.heatmap(df.corr(), annot=True, cmap='coolwarm', vmin=-1, vmax=1)
plt.title('pearson coefficient heatmap')
plt.show()

 

상관 계수가 0.87이면 상관 관계가 높다고 볼 수 있다!

📊비모수 상관계수

*️⃣ 두번째 그래프는 스피어만 상관계수, 세번쨰 그래프는 켄달의 타우 비선형 상관계수

 

*️⃣ 스피어만 상관계수는 두 변수 순위 간의 상관 관계를 측정(-1 ~ 1), 켄달의 타우 비선형 상관 계수는 순위 일관성을 측정하여 상관 관계를 탐지

🗯️비모수 상관계수

*️⃣ 데이터가 정규분포를 따르지 않거나 변수들이 순서형 데이터일때 사용하는 상관계수

 

*️⃣ 데이터의 분포에 대한 가정 없이 두 변수 간의 상관관계를 측정할 때 사용

 

*️⃣ 대표적으로 스피어만 상관계수와 켄달의 타우 상관 계수

 

*️⃣ 스피어만 상관계수는 두 변수의 순위 간의 일관성을 측정하고, 켄달의 타우 상관계수보다 데이터 내 편차와 에러에 민감

 

*️⃣ 켄달의 타우 상관 계수는 순위 간의 일치 쌍 및 불일치 쌍의 비율을 바탕으로 계산

 

*️⃣ 데이터 분포에 대한 가정을 하지 못하고, 순서형 데이터 일때 사용 가능

🗯️파이썬 실습

from scipy.stats import spearmanr, kendalltau
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns

# 예시 데이터 생성
np.random.seed(0)
customer_satisfaction = np.random.rand(100)
repurchase_intent = 3 * customer_satisfaction + np.random.randn(100) * 0.5

# 데이터프레임 생성
df = pd.DataFrame({'Customer Satisfaction': customer_satisfaction, 'Repurchase Intent': repurchase_intent})

# 스피어만 상관계수 계산
spearman_corr, _ = spearmanr(df['Customer Satisfaction'], df['Repurchase Intent'])
print(f"스피어만 상관계수: {spearman_corr}")

# 켄달의 타우 상관계수 계산
kendall_corr, _ = kendalltau(df['Customer Satisfaction'], df['Repurchase Intent'])
print(f"켄달의 타우 상관계수: {kendall_corr}")

# 상관관계 히트맵 시각화
sns.heatmap(df.corr(method='spearman'), annot=True, cmap='coolwarm')
plt.title('spearman coefficient heatmap')
plt.show()

📊상호정보 상관계수

*️⃣ 두 변수 간의 상호 정보 측정

 

*️⃣ 변수 간의 정보 의존성을 바탕으로 비선형 관계 탐지

 

*️⃣ 서로의 정보에 대한 불확실성을 줄이는 정도를 바탕으로 계산

 

*️⃣ 범주형 데이터에도 적용 가능!

 

*️⃣ 두 변수가 범주형 변수이고, 비선형적이고 복잡한 관계를 탐지하고자 할 때

 

 

 상호 정보 값이 0.9로 표시되며 강한 비선형 의존성을 띔

import numpy as np
from sklearn.metrics import mutual_info_score
# 범주형 예제 데이터
X = np.array(['cat', 'dog', 'cat', 'cat', 'dog', 'dog', 'cat', 'dog', 'dog', 'cat'])
Y = np.array(['high', 'low', 'high', 'high', 'low', 'low', 'high', 'low', 'low', 'high'])
# 상호 정보량 계산
mi = mutual_info_score(X, Y)
# Mutual Information (categorical): 0.6931471805599456

❇️아티클 스터디

더보기

🌈요약 

 

A/B 테스트는 오바마 대선 캠페인 등으로 일반인들에게도 잘 알려진 분석 방법이지만 그 둥 상당수가 A/B 테스트를 양자 택일 정도로 분리하고 그 중 더 나은 안을 채택하는 것이라고 생각하는 경우가 많다. 하지만 이것이 우리가 가장 궁금하게 하는 것을 아는 방법일까?

 

A/B 테스트를 설계할 때 우리는 목표를 달성하기 위한 방안으로 A안과 B안 중 어느게 더 효과가 좋은 지 비교하게 된다. 하지만 진짜 궁금증은 이것보다 더욱 복잡하고 섬세하다.

 

그래서 우리는 몇 가지 기대를 하게되고 궁극적으로 A/B 테스트 결과가 우연이 아니길 바라게 된다.

이런 숨은 질문을 생각하면 단순히 A/B테스트의 설계와 결과 해석을 트래픽을 절반으로 나누거나, 변수를 하나만 두거나 더 나은 결과를 보여주는 방안을 선택해서 배포하는 식으로 정의 할 수 없다!

 

주요 포인트 

 

🗯️우리가 A/B 테스트를 설계할 때 진짜 궁금해 하는 것은 다음과 같다.

 

➡️우리는 암묵적으로 A/B 방안의 결과가 크기를 바란다. Ex) 두 집단의 채택률이 1% 차이가 나면 뭔가 찝찝함을 느낀다.

 

➡️우리는 실험이 공정하기를 바란다. Ex) 우리는 은연중에 실험 배경이 동일하다고 생각하면서 공정성을 요구한다.

 

➡️우리는 이번 실험의 결과가 이례적이거나 우연이 아니길 바란다. Ex) 위의 조건을 고려해서 다시 조사했을 때 전환률이

4% 늘어났다. 하지만 이걸 보고 다음 번에 이 실험을 한다면 같은 결과가 나올지 의문을 가진다.


🗯️핵심 개념 

⭐A/B 테스트

A/B 테스트는 두 가지 대안(A안, B안)을 비교하여 더 좋은 성과를 내는 쪽을 찾는 실험 방법이다.

사용자에게 무작위로 서로 다른 버전을 보여주고, 실제 반응 데이터를 기반으로 어떤 선택이 더 효과적인지 판단한다.

Ex)쇼핑몰 구매 버튼 테스트

A안: “구매하기” 버튼 (파란색)

B안: “지금 구매하기” 버튼 (빨간색)

사용자를 절반씩 나눠 보여준 뒤,클릭률,구매율,이탈률

등을 비교한다.

→ B안 성과가 더 좋다면 B안을 적용

🗯️용어 정리 

⭐트래픽

**트래픽(Traffic)**은 웹사이트, 앱, 서비스에 유입되는 사용자 활동량 또는 데이터 흐름량을 의미

마케팅 / 데이터 분석에서의 트래픽은 서비스에 방문한 사용자 수, 방문량을 뜻함

'TIL' 카테고리의 다른 글

20260421 TIL  (0) 2026.04.21
20260420 TIL  (0) 2026.04.20
20260416 TIL  (1) 2026.04.16
202060415 TIL  (1) 2026.04.15
20240414 TIL  (2) 2026.04.14