# 사용 예시
# itertools 활용
> import itertools
> df = pd.DataFrame(...)
> target_columns = ['금값', '은값', '환율']
# 피어슨 상관계수
> for col1, col2 in itertools.combinations(target_columns, 2):
result = pearsonr(df[col1], df[col2])
print(f'{col1} ~ {col2}: coef:{round(result[0],3)}, p-value: {round(result[1],4)}')
# 금값 ~ 은값: coef:0.972, p-value: 0.0
# 금값 ~ 환율: coef:-0.679, p-value: 0.0001
# 은값 ~ 환율: coef:-0.695, p-value: 0.0
> df.drop('일자',axis=1).corr(method = 'pearson')
금값 은값 환율
금값 1.000000 0.971864 -0.679327
은값 0.971864 1.000000 -0.695457
환율 -0.679327 -0.695457 1.000000
# 스피어만 상관계수
> for col1, col2 in itertools.combinations(target_columns, 2):
result = spearmanr(df[col1], df[col2])
print(f'{col1} ~ {col2}: coef:{round(result[0],3)}, p-value: {round(result[1],4)}')
# 금값 ~ 은값: coef:0.971, p-value: 0.0
# 금값 ~ 환율: coef:-0.504, p-value: 0.0063
# 은값 ~ 환율: coef:-0.528, p-value: 0.0039
> df.drop('일자',axis=1).corr(method = 'spearman')
금값 은값 환율
금값 1.000000 0.971124 -0.503908
은값 0.971124 1.000000 -0.528106
환율 -0.503908 -0.528106 1.000000
댓글남기기