금. 8월 8th, 2025

데이터 분석의 세계에서 ‘선형회귀 분석’은 데이터 간의 관계를 파악하고 미래를 예측하는 데 필수적인 도구입니다. 하지만 이 복잡해 보이는 분석을 엑셀에서 어떻게 쉽게 할 수 있을까요? 바로 LINEST 함수가 그 해답입니다! 이 글에서는 엑셀의 LINEST 함수를 사용하여 선형회귀 분석을 수행하고, 그 결과를 완벽하게 해석하는 방법에 대해 상세히 알아보겠습니다.


1. LINEST 함수란 무엇인가요? 📊

LINEST 함수는 통계 분석 함수 중 하나로, ‘최소 제곱법(Least Squares Method)’을 이용하여 데이터 집합에 가장 적합한 직선(선형 회귀선)을 찾아주는 함수입니다. 단순히 기울기(m)와 Y절편(b)만을 반환하는 것이 아니라, 회귀 분석에 필요한 다양한 통계 정보를 배열 형태로 한 번에 제공하는 강력한 도구입니다.

  • 선형회귀 방정식: y = mx + b (단일 독립 변수) 또는 y = m1x1 + m2x2 + ... + b (다중 독립 변수)
  • LINEST 함수는 이 방정식의 m 값들(기울기)과 b 값(Y절편)을 찾아줍니다.

2. LINEST 함수, 왜 사용해야 할까요? 💡

LINEST 함수를 사용하면 얻을 수 있는 이점은 다음과 같습니다.

  • 정확하고 포괄적인 결과: 단순히 SLOPEINTERCEPT 함수처럼 하나의 값만 반환하는 것이 아니라, 결정계수(R²), 표준 오차, F-통계량 등 회귀 분석의 유의미성을 판단하는 데 필요한 모든 통계치를 한 번에 제공합니다.
  • 시간 절약: 여러 통계치를 개별 함수로 계산하거나 수동으로 계산할 필요 없이, 단 하나의 함수로 모든 작업을 처리할 수 있습니다.
  • 다중 선형회귀 지원: 여러 독립 변수(x 값)를 사용하여 복잡한 다중 선형회귀 분석도 쉽게 수행할 수 있습니다.
  • 전문성 향상: 엑셀로도 전문적인 통계 분석을 수행할 수 있음을 보여줍니다.

3. LINEST 함수 구문 파헤치기 🔍

LINEST 함수의 기본 구문은 다음과 같습니다.

LINEST(known_y's, [known_x's], [const], [stats])

각 인수에 대해 자세히 살펴보겠습니다.

  1. known_y's (필수):

    • 회귀 방정식에서 알고 있는 종속 변수(Y 값) 집합입니다.
    • 예: 매출액, 시험 점수 등 예측하고자 하는 값.
    • 반드시 단일 행 또는 단일 열로 구성된 범위를 지정해야 합니다.
  2. [known_x's] (선택):

    • 회귀 방정식에서 알고 있는 독립 변수(X 값) 집합입니다.
    • 예: 광고비, 공부 시간 등 Y 값에 영향을 미친다고 생각하는 값.
    • known_y's와 동일한 개수의 데이터 요소가 포함되어야 합니다.
    • 생략하면 엑셀은 known_x's를 {1, 2, 3, …}과 같은 숫자의 배열로 가정합니다. (즉, x 값을 1부터 시작하는 순차적인 숫자로 간주)
  3. [const] (선택):

    • 회귀 방정식의 상수(절편 b)를 포함할지 여부를 지정합니다.
    • TRUE 또는 생략: b를 포함하여 계산합니다. (Y 절편을 0이 아닌 값으로 가정)
    • FALSE: b를 0으로 설정하여 계산합니다. (회귀선이 원점(0,0)을 통과하도록 강제)
    • 대부분의 경우 TRUE를 사용합니다.
  4. [stats] (선택):

    • 회귀 분석의 추가적인 통계 정보를 반환할지 여부를 지정합니다.
    • TRUE: 추가 통계 정보(결정계수, 표준 오차 등)를 반환합니다. LINEST 함수의 진정한 위력을 보여주는 옵션입니다.
    • FALSE 또는 생략: 추가 통계 정보를 반환하지 않고, 오직 기울기(m 값)와 Y절편(b 값)만 반환합니다.
    • 대부분의 경우 TRUE를 사용하여 모든 정보를 얻는 것이 좋습니다.

4. LINEST 함수의 결과 배열 이해하기 (가장 중요!) 📋

LINEST 함수는 단일 셀에 결과를 반환하는 일반적인 함수와 달리, 여러 셀에 걸쳐 결과를 반환하는 ‘배열 함수’입니다. 따라서 수식을 입력한 후 반드시 Ctrl + Shift + Enter를 눌러야 합니다.

[stats] 인수를 TRUE로 설정했을 때, LINEST 함수는 총 5행으로 구성된 배열을 반환하며, 열의 수는 known_x's의 독립 변수 개수(N)에 1(Y절편)을 더한 값이 됩니다.

LINEST 결과 배열 구조 (예: 단일 독립 변수 X1인 경우)

행/열 X1 (기울기) 절편 (상수)
행 1 m1 (기울기) b (Y절편)
행 2 se1 (m1의 표준 오차) seb (b의 표준 오차)
행 3 R^2 (결정계수) se_y (Y 추정치의 표준 오차)
행 4 F (F-통계량) df (자유도)
행 5 ss_reg (회귀 제곱합) ss_resid (잔차 제곱합)
  • m 값들 (기울기): 첫 번째 행에 반환되며, 여러 개의 known_x's가 있다면 왼쪽부터 x 변수의 순서대로 기울기가 반환됩니다. (예: m_n, m_n-1, ..., m_1)
  • b 값 (Y 절편): 첫 번째 행의 가장 오른쪽에 반환됩니다.
  • 표준 오차 (se):m 값과 b 값의 표준 오차를 나타냅니다. 이 값이 작을수록 추정치가 더 정확합니다.
  • 결정계수 (R^2): 회귀 모델이 종속 변수(Y)의 변동을 얼마나 잘 설명하는지를 나타내는 척도입니다. 0과 1 사이의 값이며, 1에 가까울수록 모델의 설명력이 높습니다.
  • Y 추정치의 표준 오차 (se_y): 예측된 Y 값과 실제 Y 값 사이의 평균적인 오차를 나타냅니다.
  • F-통계량 (F): 회귀 모델 전체의 통계적 유의성을 평가하는 데 사용됩니다. 이 값이 클수록 모델이 유의미할 가능성이 높습니다.
  • 자유도 (df): 통계적 추정치 계산에 사용되는 정보의 독립적인 개수를 나타냅니다.
  • 회귀 제곱합 (ss_reg): 회귀 모델에 의해 설명되는 종속 변수의 총 변동을 나타냅니다.
  • 잔차 제곱합 (ss_resid): 회귀 모델에 의해 설명되지 않는 종속 변수의 총 변동을 나타냅니다.

5. LINEST 함수 실전 예제: Ctrl+Shift+Enter! 🚀

간단한 예제를 통해 LINEST 함수를 사용하는 방법을 알아보겠습니다.

시나리오: 특정 상품의 광고비 지출에 따른 매출 변화를 분석하여, 광고비가 매출에 미치는 영향을 파악하고 싶습니다.

데이터:

광고비 (단위: 만원) (X) 매출 (단위: 백만원) (Y)
10 60
20 85
30 110
40 130
50 155
60 180
70 200

단계:

  1. 데이터 입력: 위 데이터를 엑셀 시트에 입력합니다. 예를 들어, A1셀에 “광고비 (X)”, B1셀에 “매출 (Y)”을 입력하고 데이터를 A2:B8 범위에 입력합니다.

  2. 결과를 표시할 범위 선택:

    • 현재 독립 변수(X)는 ‘광고비’ 하나이므로, 열의 수는 독립 변수 개수(1) + 절편(1) = 2열이 됩니다.
    • 행의 수는 항상 5행입니다.
    • 따라서 결과를 표시할 5행 x 2열의 범위를 선택합니다. 예를 들어, D2:E6 범위를 마우스로 드래그하여 선택합니다.
  3. LINEST 함수 입력:

    • 선택된 범위에서 가장 왼쪽 상단 셀(예: D2)에 다음 수식을 입력합니다.
    • =LINEST(B2:B8, A2:A8, TRUE, TRUE)
      • B2:B8: known_y's (매출 데이터)
      • A2:A8: known_x's (광고비 데이터)
      • TRUE: 절편 b를 포함합니다.
      • TRUE: 모든 통계 정보를 반환합니다.
  4. 배열 수식 확정:

    • 수식을 입력한 상태에서 Ctrl + Shift + Enter 키를 동시에 누릅니다. (일반 Enter가 아님!)
    • 그러면 선택했던 D2:E6 범위 전체에 걸쳐 LINEST 함수의 결과가 배열 형태로 나타날 것입니다.

결과 예시:

D2:E6 범위에 다음과 유사한 결과가 나타날 것입니다.

1.982142857 40.71428571
0.054329249 2.502931139
0.999516001 1.839446401
10300.90805 5
17466.07143 8.448979592

6. LINEST 함수 결과 해석하기 🧠

위 예시 결과를 바탕으로 각 값이 무엇을 의미하는지 해석해 보겠습니다.

  1. 첫 번째 행: 기울기(m)와 Y절편(b)

    • D2 셀: 1.9821… (기울기, m)
      • 광고비가 1만원 증가할 때, 매출은 평균적으로 1.98백만원 증가한다는 의미입니다.
    • E2 셀: 40.7142… (Y절편, b)
      • 광고비를 전혀 지출하지 않았을 때(광고비가 0일 때), 예상되는 매출은 40.71백만원이라는 의미입니다.
    • 회귀 방정식: 매출 = 1.9821 * 광고비 + 40.7142
  2. 두 번째 행: 각 값의 표준 오차

    • D3 셀: 0.0543… (기울기의 표준 오차)
    • E3 셀: 2.5029… (Y절편의 표준 오차)
    • 이 값들은 추정된 기울기와 절편이 얼마나 정확한지를 나타냅니다. 표준 오차가 작을수록 추정치의 신뢰도가 높습니다. 이를 통해 t-검정 등을 수행하여 각 변수의 유의미성을 판단할 수 있습니다.
  3. 세 번째 행: 결정계수(R²)와 Y 추정치의 표준 오차

    • D4 셀: 0.9995… (결정계수, )
      • 이 값은 0.9995로 1에 매우 가깝습니다. 이는 광고비가 매출 변동의 약 99.95%를 설명한다는 의미입니다. 즉, 모델이 데이터를 매우 잘 설명하고 예측력이 매우 높다는 것을 나타냅니다. (일반적으로 0.7 이상이면 설명력이 높다고 판단할 수 있습니다.)
    • E4 셀: 1.8394… (Y 추정치의 표준 오차, se_y)
      • 실제 매출과 회귀 모델로 예측된 매출 간의 평균적인 오차가 1.8394백만원이라는 의미입니다. 이 값이 작을수록 예측의 정확도가 높습니다.
  4. 네 번째 행: F-통계량(F)과 자유도(df)

    • D5 셀: 10300.908… (F-통계량)
    • E5 셀: 5 (자유도)
    • F-통계량은 회귀 모델 전체의 통계적 유의성을 평가합니다. 이 값이 특정 유의수준(예: 0.05)에서의 임계값보다 크면, 회귀 모델이 통계적으로 유의미하다고 판단합니다. (P-value를 계산하여 더 명확히 판단할 수 있습니다.)
  5. 다섯 번째 행: 회귀 제곱합(ss_reg)과 잔차 제곱합(ss_resid)

    • D6 셀: 17466.071… (회귀 제곱합, ss_reg)
      • 회귀 모델이 설명하는 Y의 총 변동량입니다.
    • E6 셀: 8.4489… (잔차 제곱합, ss_resid)
      • 회귀 모델이 설명하지 못하는 Y의 총 변동량(오차)입니다.
      • R² = ss_reg / (ss_reg + ss_resid) 로도 계산될 수 있습니다.

7. LINEST 함수 사용 시 유의사항 ⚠️

  • 반드시 배열 수식으로 입력: Ctrl + Shift + Enter를 잊지 마세요! 이 키 조합을 사용하면 수식 입력창에 {=LINEST(...)}와 같이 중괄호가 자동으로 생깁니다.
  • 결과 범위 미리 선택: LINEST 함수를 입력하기 전에 충분한 크기의 빈 셀 범위를 미리 선택해 두어야 합니다. 독립 변수의 개수에 따라 열의 개수가 달라집니다. (독립 변수 개수 + 1)
  • 데이터의 순서: known_x's에 여러 개의 독립 변수를 입력할 경우, 입력하는 순서대로 결과 배열의 기울기 값이 반환됩니다. 예를 들어, LINEST(Y, X1:X2)로 입력하면 X1의 기울기가 X2의 기울기보다 오른쪽에 나타납니다. (항상 절편이 가장 오른쪽입니다.)
  • 선형성 가정: LINEST 함수는 데이터가 선형 관계를 가진다고 가정합니다. 데이터가 비선형 관계라면 다른 분석 방법을 고려해야 합니다.
  • 이상치(Outlier) 확인: 이상치 데이터는 회귀 분석 결과에 큰 영향을 미칠 수 있으므로, 데이터를 시각화하여 이상치를 확인하고 필요시 처리해야 합니다.
  • 다중 공선성(Multicollinearity): 다중 독립 변수를 사용할 경우, 독립 변수들 간에 강한 상관관계가 있으면 회귀 모델의 안정성이 떨어질 수 있습니다.

8. 다른 엑셀 함수들과의 비교 🆚

엑셀에는 회귀 분석과 관련된 여러 함수들이 있습니다. LINEST 함수는 그중 가장 포괄적입니다.

  • SLOPE & INTERCEPT:

    • 각각 기울기와 Y절편만을 반환합니다.
    • LINEST의 첫 번째 행과 동일한 결과를 주지만, 그 외의 통계 정보는 제공하지 않습니다.
    • 단순히 선형 방정식의 계수만 필요할 때 유용합니다.
  • TREND:

    • SLOPEINTERCEPT를 기반으로 주어진 X 값에 대한 Y 값을 예측합니다.
    • 회귀 모델을 생성하지만, 모델의 통계적 유의성이나 설명력을 평가하는 데 필요한 정보는 제공하지 않습니다.
  • 차트의 추세선 (Trendline):

    • 산점도에 추세선을 추가하고, R-squared 값과 방정식을 표시할 수 있습니다.
    • 시각적으로 유용하지만, LINEST가 제공하는 모든 상세 통계 정보를 얻을 수는 없습니다.

결론적으로, 선형회귀 분석의 모든 통계 정보를 한눈에 파악하고 싶다면 LINEST 함수가 가장 강력하고 효율적인 선택입니다.


결론 🎉

엑셀의 LINEST 함수는 복잡해 보이는 선형회귀 분석을 매우 간단하고 효율적으로 수행할 수 있게 해주는 강력한 도구입니다. 이 함수 하나로 기울기와 절편은 물론, 모델의 설명력(), 각 계수의 신뢰도(표준 오차), 모델 전체의 유의성(F-통계량) 등 다양한 통계 정보를 한 번에 얻을 수 있습니다.

데이터 분석의 첫걸음을 떼는 분들이나, 일상적인 업무에서 데이터 간의 관계를 빠르게 파악해야 하는 분들에게 LINEST 함수는 분명 큰 도움이 될 것입니다. 이제 더 이상 복잡한 통계 소프트웨어 없이도 엑셀만으로 전문적인 회귀 분석을 시작해 보세요! 📈💡 D

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다