데이터가 얼마나 퍼져있는지를 측정하는 방법
각 값들의 평균으로부터 차이의 제곱 평균
모집단의 분산은 모집단의 parameter이고
샘플의 분산은 샘플의 statistic이다
샘플 분산은 모집단 분산의 추정치이다
샘플의 분산을 계산 할때는 N-1로 나누어야 한다.(자유도를 -1 한다)
import matplotlib.pylot as plt
df.columnA.var(ddof = 1) # ddof는 자유도
df.columnA.var(ddof = 0) # 샘플의 분산
Standard Deviation(표준편차) : 분산의 값에 루트를 씌운 값
Covariance(공분산) : 1개의 변수 값이 변화할 때 다른 변수가 어떠한 연관성을 나타내며 변화하는지를 측정
ex) X가 증가할 때 Y도 같이 증가하면 양수의 공분산을 가짐
분산이 크다면 두 변수간 연관성이 크다는 것을 나타낸다
그러나 만약 변수들이 다른 스케일을 가지고 있다면 공분산은 실제 변수의 연관성에 관계없이 영향을 받게 된다
df.cov()
np.cov(X, Y) # 2X2행렬에서 [0][1]부분이 공분산
Correlation coefficient(상관계수) : 공분산을 두 변수의 표준편차로 각각 나눠주면 스케일을 조정할 수 있고 상관계수라고 부른다
상관계수는 -1 ~ 1의 값이며 선형연관성이 없으면 0이다
X가 증가할 때 Y가 증가하면 0 < COR(X, Y) < 1
X가 증가할 때 Y가 감소하면 -1 < COR(X, Y) < 0
df.corr()
np.corrcoef(X, Y) # 2x2행렬에서 [0][1]부분이 상관계수
벡터 혹은 매트릭스가 서로 수직으로 있는 상태
좌표상에 있는 거의 모든 벡터는 다른 벡터와 상관이 작게라도 무조건 있다.
※ 오로지 수직인 벡터만 상관관계가 전혀 없다는 의미로 해석된다
벡터 수직 → 벡터의 내적값이 0
주어진 두 벡터의 조합으로 만들 수 있는 모든 가능한 벡터의 집합(더하든지 빼든지 등등)
선형 관계의 벡터 : 두 벡터가 같은 선상에 있는 경우 이 벡터들은 선형관계에 있다고 표현
선형관계가 없는 벡터 : 같은 선상에 있지 않은 벡터들은 선형적으로 독립되어 있다고 표현하며 주어진 공간의 모든 벡터를 조합을 통해 만들어 낼 수 있다
벡터 공간 V의 basis - V라는 공간을 채울 수 있는 선형관계에 있지 않은 벡터들의 모음 (span의 역개념)
orthogonal basis 주어진 공간을 채울 수 있는 서로 수직인 벡터들
orthonormal basis 주어진 공간을 채울 수 있는 길이가 서로 1인 벡터들
매트릭스의 rank란 매트릭스의 열을 이루고 있는 벡터들로 만들 수 있는 공간의 차원
매트릭스의 차원과는 다를 수도 있으며 그 이유는 행과 열을 이루고 있는 벡터들 가운데 서로 선형관계가 있을 수도 있기 때문
rank를 확인하기위해 Gaussian Elimination을 이용(다른 방법도 존재)