빅데이터분석기사/개념

[빅데이터분석기사] 상관분석(Correlation Analysis)

EveningPrimrose 2022. 5. 24. 00:05
반응형

상관분석

 

  상관분석은 x와 y변수 간에 관계가 어떤 선형적인 관계를 갖고 있는지를 파악한다. 두 변수 간의 관계의 강도도 계산할 수 있다. 두 변수가 변하는 패턴이 얼마나 비슷한가를 확인하는 과정이 상관분석이다. 상관관계에 따른 산포도는 아래 그림과 같이 나타낼 수 있으며, x축과 y축으로 구성하여 흩어진 정도를 표현할 수 있다.

 

상관관계

 

공분산(Covariance), X축 분산과 Y축 분산의 평균으로 방향을 알다

 

  상관관계를 표현하는 통계량의 일종으로 x의 분산과 y의 분산을 곱한 것의 기댓값이다. x의 편차와 y의 편차를 서로 곱한 개념임을 수식을 통해 알 수 있다. 만약 첫 번째 항이 (+)이고 두 번째 항이 (+)라면 공분산값은 (+)로 계산된다. 두 항 모두 (-)라도 (+)로 공분산이 나오게 된다. 그러므로 공분산은 그 값이 커질수록 양의 상관관계를 갖는다는 사실을 알 수 있다. 반대로 두 항의 부호가 다르면 그 결과가 (-)이므로 음의 관계를 표현하는 공분산값은 작아진다.

  단, 공분산은 x와 y의 구간 범위(=Scale)에 영향을 많이 받는다. 따라서 같은 데이터라도 구간의 크기가 10단위냐 1단위냐에 따라 공분산값은 커지거나 작아질 수 있다. 이때 데이터 산포의 구간 범위를 통일하는 과정을 표준화라고 하며 이 과정에 얻어지는 통계량을 상관계수라 한다.

 

 

상관계수(Correlation coefficient), 모상관계수(p) 표본상관계수(r)

 

  상관계수는 독립/종속변수 간 관계 정도를 확인할 수 있는 값으로 공분산 표준화의 결과이다.

  상관계수는 확률변수의 절대 크기(=구간)에 영향을 받지 않도록 각 확률변수에 표준편차를 나누어 표준화 시킨 것이다. 공분산이 있음에도 불구하고 상관계수가 필요한 이유는 앞서 말했듯 공분산에는 Scale(단위)이 표준화되어 있지 않아서다. 이러한 한계를 극복하기 위해서 표준화를 통한 상관계수 비교가 필요하다. 요컨대, 상관계수는 독립변수 x와 종속변수 y간 연관성을 숫자로 대표한다. 양의 상관관계와 비슷할수록 1로, 음의 상관관계와 비슷할수록 -1로 수치가 표현된다.

 

 

상관계수의 범위

 

  상관계수(r)값의 범위는 -1부터 +1까지다. 표준편차의 총합으로 편차의 총합을 나누기 때문에 -1과 +1의 범위로 표현된다. r이 1에 가까울수록 강한 양의 상관관계를 나타내고, -1에 가까울수록 강한 음의 상관관계가 뚜렷해지게 된다. 여기서 상관계수 r은 보통 피어슨 상관계수(Pearson linear correlation coefficient, PLCC)를 의미하는데, 이는 선형적으로 두 변수 간의 관계를 표준화해 설명한 것이다.

 

상관계수에 따른 관계 예시

 

상관계수의 활용, '만능계수'가 아님을 유념하자

 

  상관관례를 설명하는 상관계수는 만능으로 적용되어 활용될 수 없다. 먼저 상관계수는 수학적인 관계를 설명하는 지표이다. 양/음의 관계를 설명하는 수치로 활용돼야 확대해석을 피할 수 있다.

 

  가령, 아이스크림 판매량과 강력범죄율 데이터를 가지고 상관관계를 분석한 결과로 상관계수가 0.75라면 '아이스크림 판매가 많아질수록 강력범죄가 증가한다'고 해석할 수 있을까? 이는 상식적으로 보아도 뭔가 이상하다. 사실 여름 기간 동안 높아진 불쾌지수가 강력범죄에 영향을 준 것이다. 그런데 불쾌지수 대신 아이스크림 판매량이 그 자리를 대신하면 이와 같은 엉뚱한 해석을 하게 될 수 있다.

 

  또한 상관계수는 선형의 관계를 설명할 때만 쓰인다. 비선형 관계를 상관분석을 통해 설명할 수는 없다. 예를 들어, 생산량과 이익 간 상관관계를 분석하고자 할 때 아래 그림과 같은 상관관계 곡선이 비선형적으로 그려졌다. 피어슨 상관계수(r)를 구하면 (좌우대칭이므로) 0값이 나오게 될 것이다. 그렇다고 두 변수는 상관관계가 없는 것일까? 그렇지는 않다. 비선형적으로 그 관계성이 명확히 보이고 있다. 

 

비선형 상관관계 예시

 

  생산량이 증가할수록 이익도 증가하다가 재고관리 비용 증가 등의 이유로 어느 기점에서 이익이 떨어지게 되는 2차 함수적인 관계가 분명히 존재한다. 단순하게 상관계수만으로 두 변수 간의 관계를 결론낸다면 올바른 분석(주성분, 회귀)을 수행하기 어렵다는 점을 알아두어야 한다.

 

 

스피어만 상관계수(Spearman rank-order correlation coefficient), SROCC)

 

  변숫값 대신 순위를 이용하여 상관계수를 구하는 경우 사용된다. 데이터를 작은 것부터 차례로 순위를 매겨 서열 순서로 바꾼 뒤 순위를 이용해 상관계수를 구한다. 두 변수 안의 순위가 완전히 일치하면 +1이고, 두 변수의 순위가 완전히 반대이면 -1이 된다.

 

스피어만 그래프 형태
두 상관계수의 특징

 

분석 연습

 

  2020년 A병원이 청구한 접수내역 4,266건의 데이터 바탕의 각 4가지 항목 간 상관분석을 실시하고 양과 음의 상관관계를 도출한다. 테이블에 있는 미사용 컬럼 제거와 다중공선성 문제 해결까지 데이터전처리 과정도 포함해 진행하였다.

 

  1) 추출한 데이터 세트에서 불필요한 정보(요양기관기호, 지원코드, 처리상태 등)는 제거하는 전처리를 수행하고 청구총금액(DMD_TOT_AMT), 청구총건수(DMD_TOT_CNT), 심사결정건수(RVD_CNT), 지급기간(PAYM_TRM)의 분석 대상 항목을 선정하였다.

 

  2) 각 항목 간의 상관관계를 파악하기 위해서 상관분석을 실시(4*4)하고 동시에 상관계수를 구한다(상관계수가 0보다 크면 양의 상관관계가 있고 0보다 작으면 음의 상관관계를 갖는다).

 

 

  3) 붉은색 점선 영역에 표기된 상관계수를 확인하면, 지급기간을 기준으로 나머지 3종류의 계숫값이 -0.1~0.1 사이로 거의 0에 가까워 관계성이 매우 약하고 동시에 음의 관계성을 갖는다는 것을 확인하였다. 지급기간이 길다고 꼭 청구총금액과 건수 그리고 심결건수가 큰 것은 아님을 확인한 것이다.

 

  4) 다중공선성의 해소 : 서로 다른 독립변수가 종속변수와 추세(또는 분류)선을 공유할 가능성(또는 성질)이 다중공선성이다. 여기서는 청구총건수(x1)와 심사결정건수(x2)가 서로 지급기간(y)과 매우 유사한 관계성을 보이므로 둘 중 하나를 제거하지 않으면 다중공선성 문제를 야기할 수 있는 것이다.

 

  상포도 그래프를 그리기 전 다중공선성 분석을 통해 독립변수 중 청구총건수와 심사결정건수가 서로 영향을 강하게 미치고 있음을 알 수 있었다. 이는 둘 중에 하나의 독립변수를 제거하여도 후속 분석 작업으로 주성분분석이나 회귀분석을 수행했을 때 큰 영향을 끼치지 않음을 의미한다. 이번 경우에는 심사결정건수를 제거하였다. 일반적으로 모든 변수의 VIF 수치가 10미만이 되어야 다중공선성 문제가 해결되었다고 해석할 수 있다. 

 

VIF Factor

 

다중공선성의 문제, 다른 관계의 선형이 서로 매우 유사할 때

 

  대개 상관분석은 변수들 간의 상관관계를 선형적으로 설명하기 위한 분석의 중간 과정으로 많이 활용된다. 앞선 분석 연습에서처럼 사실 변수 4종의 상관계숫값을 얻는 과정 중에는 16(=4^2)개의 2차원 그래프로의 변환이 선행된다. 이때 16개의 그래프 가운데 양/음의 관계를 선형으로 설명할 수 있는 그래프가 4종이었다고 한다면, 4개의 선이 서로 닮을 수도 있고 그렇지 않을 수도 있을 것이다. '다중공선성'이란 바로 이 선들이 서로 많이 닮았다는 것을 뜻한다.

 

 

함께 보면 좋은 글

 

[빅데이터분석기사] 주성분분석(Principal Component Analysis)

 

[빅데이터분석기사] 주성분분석(Principal Component Analysis)

주성분분석 여러 특성(feature) 가운데 대표 특성을 찾아 분석하는 방식으로, 대표 특성의 선별은 자료의 차원을 고차원에서 하위 차원으로 축소하는(차원축소) 기법을 활용한다. 차원축소기법에

it-utopia.tistory.com

 

[빅데이터분석기사] 회귀분석(Regression Analysis)

 

[빅데이터분석기사] 회귀분석(Regression Analysis)

회귀분석 일반적으로 예측을 목표하는 통계 분석이다. 예측을 하는 방법에 핵심이 되는 개념이 바로 '추세선'이다. 좌표상에서 데이터의 분포와 앞으로의 변화를 가장 잘 설명할 수 있는 하나의

it-utopia.tistory.com

 

[빅데이터분석기사] 로지스틱 회귀분석(Logistic Regression Analysis)

 

[빅데이터분석기사] 로지스틱 회귀분석(Logistic Regression Analysis)

로지스틱 회귀 데이터가 어떤 범주에 속할 확률을 0에서 1 사이의 값으로 예측하고, 그 확률에 따라 가능성이 더 높은 범주에 속하는 것으로 분류하는 기법이다. 0.5 보다 크면 어떤 사건이 일어

it-utopia.tistory.com

 

[빅데이터분석기사] 시계열분석(Time-series Analysis)

 

[빅데이터분석기사] 시계열분석(Time-series Analysis)

시계열분석 시간에 따라 변화되는 자료의 패턴을 밝혀 가까운 미래를 예측하는 방법이다. 시계열분석을 위해서는 시계열 데이터가 준비돼야 한다. 시간의 경과만 한 축(x)을 구성하는 것이 아니

it-utopia.tistory.com

 

[빅데이터분석기사] 최근접 이웃(K-Nearest Neighbors)

 

[빅데이터분석기사] 최근접 이웃(K-Nearest Neighbors)

최근접 이웃 알고리즘은 우리가 예측하려고 하는 임의의 데이터와 가장 가까운 데이터 K개를 찾아 다수결에 의해 데이터를 예측하는 방법이다. 위 그림과 같이 두 그룹의 데이터가 있을 때 주어

it-utopia.tistory.com

 

반응형