도구스학업·수학

주성분분석(PCA) 계산기

2차원·3차원 점들의 공분산 행렬을 구해 고유벡터(주성분)와 고윳값, 설명 분산 비율을 계산합니다. 점들이 가장 크게 흩어진 방향을 찾아 줍니다.

공백·쉼표 모두 구분자로 됩니다.

제1주성분이 설명하는 분산

70%

점 6개 · 2차원 · 평균 (2.667, 2.667)

주성분

1주성분

방향(단위벡터)(0.707, 0.707)
분산(고윳값)3.1111
설명 분산 비율70%

2주성분

방향(단위벡터)(0.707, -0.707)
분산(고윳값)1.3333
설명 분산 비율30%

공분산 행렬

2.22220.8889
0.88892.2222
고유벡터가 왜 주성분인가. 어떤 방향 u로 점들을 투영했을 때의 분산은 uᵀCu(C는 공분산 행렬)로 쓸 수 있습니다. 이 값을 최대화하는 조건이 정확히 Cu=λu(고유방정식)가 되므로, 분산을 최대화하는 방향은 반드시 공분산 행렬의 고유벡터이고 고윳값이 큰 순서가 곧 분산이 큰 순서입니다.

계산 방법

  1. 12차원(x y)이나 3차원(x y z) 점들을 한 줄에 하나씩 입력합니다.
  2. 2평균과 공분산 행렬을 확인합니다.
  3. 3고윳값이 큰 순서로 정렬된 주성분과, 각 성분이 설명하는 분산 비율을 봅니다.
  4. 4제1주성분 방향이 점들이 가장 크게 흩어진 방향입니다.

자주 묻는 질문

여러 방향으로 흩어진 점들 중, 분산(흩어진 정도)이 가장 큰 방향부터 순서대로 찾는 방법입니다. 그 방향들이 주성분이고, 원래 여러 차원이던 데이터를 분산이 큰 몇 개 방향만으로 요약(차원 축소)하는 데 씁니다.

어떤 방향 u로 점들을 투영했을 때의 분산은 uᵀCu(C는 공분산 행렬)로 쓸 수 있습니다. 이 값을 최대화하는 u를 구하면 그 조건이 정확히 Cu=λu, 즉 고유방정식이 됩니다. 그래서 분산을 최대화하는 방향은 반드시 공분산 행렬의 고유벡터이고, 고윳값이 큰 순서가 곧 분산이 큰 순서입니다.

그 두 도구는 일반 행렬의 고윳값·특이값 분해라는 대수 연산 자체를 다룹니다. 이 도구는 그것을 「데이터가 가장 크게 흩어진 방향 찾기」라는 구체적인 쓰임에 적용한 것으로, 공분산 행렬을 만드는 과정과 설명 분산 비율 해석이 더해집니다.

전체 분산 중 그 주성분 하나가 차지하는 비율입니다. 예를 들어 제1주성분의 설명 분산 비율이 90%라면, 원래 데이터의 흩어짐 중 90%를 그 방향 하나만으로 설명할 수 있다는 뜻입니다. 점들이 완전히 한 직선 위에 있으면 제1주성분이 100%를 설명합니다.

네, 흔한 조합입니다. 차원이 높은 데이터를 PCA로 분산이 큰 몇 개 방향으로 줄인 뒤, 그 축소된 좌표에서 k-평균 같은 군집화를 돌리면 계산이 가벼워지고 시각화도 쉬워집니다.

알아두면 좋은 점

  • 이 계산기는 2차원·3차원 점만 다룹니다. 점은 500개까지 입력할 수 있습니다.
  • 공분산 행렬은 모집단 정의(÷n)를 씁니다. 표본 정의(÷(n−1))를 쓰는 도구와는 고윳값의 절대 크기가 다를 수 있지만, 방향(고유벡터)과 설명 분산 비율은 똑같습니다.
  • 모든 점이 같은 위치면 분산이 0이라 계산할 수 없습니다.

함께 보면 좋은 도구

마지막 검증: 2026년 9월 3일 · 결과는 참고용 추정치입니다.