검정곡선 (Calibration Curve) 농도 설정의 차이로 발생되는 원인과 결과를 알아보자.
정량분석에서 검정곡선 (Calibration curve)은 꼭 필요한 항목이다.
검정곡선은 정량 범위에서 5개 이상의 표준물질 농도를 측정해서 장비 측정 결과와 상관성을 확인한 수식을 만들어 낸다.
분석법 밸리데이션 가이드라인에는 5개 이상의 표준물질을 측정하라는 내용을 제시하지만,
표준물질 농도의 설정 방법은 명확히 설명하지 않고 있다.
일부 가이드라인에서는 설정 농도 범위를 제시하거나, 농도 설정이 고르게 분포하도록 제시하고 있다.
분석자가 임의로 설정해야 하는 표준물질의 농도 설정은 검정곡선의 오류 발생 위험도가 낮기 때문이라고 추정된다.
하지만, 일부 실험에서는 검정곡선의 농도 설정 차이로 농도 계산에 문제가 발생하기 때문에
발생 원인과 수반되는 문제점 그리고 해결 방법도 알아두는 것이 필요하다.
이번 내용에는 검정곡선에서 설정한 농도에 문제가 없는지 검증하는 방법을 알아보고,
설정 농도의 이상으로 발생되는 문제점과 해결 방법에 대해서 설명하려고 한다.
- 검정곡선 데이터 만들기 -
검정곡선의 농도 설정의 차이로 이상 유무를 확인할 수 있도록 문제가 없는 이상적인 가상 데이터를 만들었다.
장비의 측정값 (Response)는 설정 농도의 100배로 설정하였고,
모든 농도의 측정값은 재현성 RSD% 가 최대 2%를 초과하지 않도록 하였다.
장비 측정값은 무자위 오차 (Random error)가 발생되기 때문에
설정한 측정값에서 2% 이내에 오차가 농도가 달라지면 양의 값에서 음의 값으로 나타나도록 설정하였다.
실제 측정 결과 패턴과 다른 부분이 있지만,
농도 설정 차이로 나타나는 결과를 비교하기 위해서 다른 조건을 동일하게 설정되었다.
설정 농도 개수가 적으면 문제가 발생되는 부분도 줄이기 위해서 8개 농도를 설정하였다.
단일 농도 측정 방식을 적용해서 검정곡선 수식을 만들었고,
검정곡선의 차이를 확인하기 위해서 개별 검정곡선을 4회 만들어서 비교하였다.
[Data 1] 정량 범위 농도 300 ~ 1000의 사이에서 8개 농도를 등간격으로 설정하고,

측정값은 위에서 설명한 조건을 만족할 수 있도록 엑셀 수식을 작성해서 4개의 테스트 결과를 만들었다.
| Concentration | Test 1 | Test 2 | Test 3 | Test 4 | Mean | RSD |
| 300 | 30438 | 29447 | 30039 | 29832 | 29939 | 1.4% |
| 400 | 39281 | 40037 | 39510 | 40126 | 39739 | 1.0% |
| 500 | 50205 | 49193 | 50483 | 49004 | 49721 | 1.5% |
| 600 | 59870 | 60211 | 59227 | 60456 | 59941 | 0.9% |
| 700 | 70887 | 69259 | 70129 | 68820 | 69774 | 1.3% |
| 800 | 78678 | 80293 | 79827 | 80851 | 79912 | 1.2% |
| 900 | 91292 | 89627 | 90469 | 89111 | 90125 | 1.1% |
| 1000 | 99071 | 100420 | 99778 | 101026 | 100074 | 0.8% |
| Slop | 100 | 101 | 100 | 101 | 100 | 0.6% |
| Intercept | 204 | -739 | -214 | -653 | -351 | -124.0% |
| $R^2$ | 0.99862 | 0.99968 | 0.99968 | 0.99887 | 0.99921 | 0.1% |
설정된 농도로 만들어진 검정곡선 1차 방정식은 기울기와 절편이 일정 범위에서 값이 나타나지만,
기울기 재현성은 2% 이하로 나타나지만, 절편 재현성은 2%를 초과하는 것으로 확인된다.
검정곡선의 검증 방법으로 예측 농도 (Back-calculated concentration)와 설정된 농도 (참값 농도)를 비교하였다.
회수율% (100 ✕ 예측 농도 / 설정된 농도)는 개별 농도의 정확성을 평가하는 것으로 수식의 적합성을 확인할 수 있다.
| Concentration | Recovery (Test 1) |
Recovery (Test 2) |
Recovery (Test 3) |
Recovery (Test 4) |
Absolute Error % (Cumulative Maximum) |
| 300 | 99.7% | 100.0% | 98.8% | 100.1% | 2.6% |
| 400 | 99.7% | 99.9% | 99.3% | 100.0% | 1.4% |
| 500 | 99.7% | 99.8% | 99.6% | 100.0% | 0.8% |
| 600 | 99.7% | 99.8% | 99.8% | 99.9% | 0.7% |
| 700 | 99.7% | 99.8% | 99.9% | 99.9% | 0.8% |
| 800 | 99.7% | 99.8% | 100.0% | 99.9% | 1.0% |
| 900 | 99.7% | 99.7% | 100.1% | 99.9% | 1.2% |
| 1000 | 99.7% | 99.7% | 100.2% | 99.9% | 1.3% |
개별 테스트 측정값으로 작성된 각각의 수식으로 계산된 예측농도의 오차를 회수율%로 확인하였다.
그 결과에서 모든 농도의 측정값 오차는 2% 이내로 나타나는 것이 확인된다.
허용 범위에서 무작위로 계산된 데이터를 누적해서 관찰해 본 결과에서
농도 오차 (Absolute Error%)는 최대 2.6%로 확인되었고, 가장 낮은 농도에서만 2%를 조금 넘는 것으로 나타난다.
Data 1의 농도 설정 조건은 검정곡선 수식에 문제점이 나타나지 않는 것으로 확인된다.
- 검정곡선 농도 설정의 문제점 -
표준용액 조제하는 방법 중 연속 희석 (Serial dilution) 방법을 주로 사용된다.
이렇게 제조된 표준용액의 농도는 낮은 농도들이 모여있는 패턴을 나타낸다.
[Data 2] Data 1과 최대 농도 1000은 동일하게 설정하고 연속 2배 희석으로 8개 농도를 설정하였다.

앞서 데이터를 만드는 동일한 기준으로 만들어진 데이터와 수식에 대한 결과는 다음과 같다.
| Concentration | Test 1 | Test 2 | Test 3 | Test 4 | Mean | RSD |
| 7.8 | 790 | 772 | 788 | 770 | 780 | 1.3% |
| 15.6 | 1541 | 1567 | 1550 | 1593 | 1563 | 1.5% |
| 31.3 | 3131 | 3099 | 3145 | 3070 | 3111 | 1.1% |
| 62.5 | 6130 | 6304 | 6224 | 6327 | 6247 | 1.4% |
| 125.0 | 12694 | 12417 | 12669 | 12267 | 12512 | 1.6% |
| 250.0 | 24874 | 25314 | 24748 | 25250 | 25046 | 1.1% |
| 500.0 | 50307 | 49777 | 50253 | 49953 | 50072 | 0.5% |
| 1000.0 | 98106 | 101348 | 98580 | 101029 | 99766 | 1.7% |
| Slop | 98.4 | 101.2 | 98.8 | 100.9 | 99.8 | 1.4% |
| Intercept | 194.6 | -114.1 | 146.3 | -102.8 | 31.0 | 523.9% |
| $R^2$ | 0.99985 | 0.99993 | 0.99991 | 0.99996 | 0.99991 | 0.005% |
4개의 검정곡선은 기울기가 측정값 재현성 RSD 2%를 초과하지 않고, 절편은 RSD% 값이 증가된 패턴으로
Data 1의 결과와 차이가 없는 것으로 확인된다.
검정곡선 수식의 검증을 위해서 각 농도의 회수율 값을 계산한 결과는 다음과 같다.
| Concentration | Recovery (Test 1) |
Recovery (Test 2) |
Recovery (Test 3) |
Recovery (Test 4) |
Absolute Error % (Cumulative Maximum) |
| 7.8 | 76.3% | 113.3% | 82.3% | 112.1% | 34.0% |
| 15.6 | 89.0% | 106.1% | 91.8% | 105.6% | 16.2% |
| 31.3 | 95.3% | 102.5% | 96.5% | 102.3% | 7.3% |
| 62.5 | 98.5% | 100.7% | 98.9% | 100.7% | 2.9% |
| 125.0 | 100.1% | 99.8% | 100.1% | 99.9% | 0.9% |
| 250.0 | 100.8% | 99.3% | 100.6% | 99.5% | 1.2% |
| 500.0 | 101.2% | 99.1% | 100.9% | 99.3% | 1.5% |
| 1000.0 | 101.4% | 99.0% | 101.1% | 99.2% | 1.6% |
개별 테스트에 만들어진 수식으로 계산된 농도 오차는 설정 농도가 낮을수록 오차가 증가하는 것으로 나타난다.
무작위 값으로 계산된 누적된 데이터에서 확인된 에러는 최대 34%로 가장 낮은 농도에서 확인되었다.
측정값의 재현성 2% 범위를 벗어난 오차는 균등한 농도 설정에 비해 17배 증가된 결과로 확인되었다.
설정 농도 범위가 증가하고, 설정 농도가 낮은 쪽으로 몰려있는 경우에는 낮은 농도의 계산 오차가 크게 나타나는 것이 확인된다.
이렇게 오류가 나타나는 원인은 높은 농도의 측정 오차가 기울기와 절편에 큰 영향을 미쳐서
낮은 농도의 계산 농도의 오차를 증가시키는 것이다.
이런 현상을 "지렛대 효과 (leverage effect)" 라고 지칭하며,
x 축에서 멀리 떨어져 있는 값 (농도)이 수식의 기울기를 움직이는 힘이 다른 값에 비해서 크게 증가되어 나타나는 현상이다.
- 지렛대 효과 (Leverage effect) 검증 방법 -
검정곡선의 수식의 문제점은 지렛대 효과 이외에도 여러가지 변수가 적용되기 때문에
수식의 회수율 (정확성) 평가로는 명확히 평가하기 어렵다.
수식의 변형은 여러가지 변수들이 적용된 마지막 결과로
회수율의 오차가 발생된 원인으로 지렛대 효과를 단정하기는 어렵다.
회귀분석에서 지렛대 효과를 평가에 사용되는 여러 가지 방법이 있으며
그중 검정곡선의 지렛대 효과를 확인할 수 있는 방법이 소개되어 있었다.
대표적인 검증 방법으로 Hat matrix, Mahalanobis distances (MD)이 소개되어 있다.
위 방법으로 각 농도의 값이 허용 기준치를 초과할 때 지렛대 효과가 발생될 가능성이 높다는 것을 확인할 수 있다.
Hat matrix와 MD는 각각의 농도가 중앙에 비해서 멀리 떨어진 척도를 계산하는 것으로
계산 결과들이 서로 다른 통계 분포를 나타내고 있어서 결과와 허용 기준치가 다르다.
이 중에서 Hat matrix 값이 더 민감하게 평가되는 경향이 있어서 그런지
대부분 참고 문헌에서 Hat matrix 평가 내용들을 확인할 수 있다.
* Hat matrix 계산 방법
Hat matrix 계산 방법은 행렬 계산법이 기본 내용이다. 수식은 다음과 같다.
$$H = X (X'X)^{-1} X'$$
- $X = (1, x_i)$는 독립 변수 행렬 (농도, x)과 상수항 (1)을 포함한 행렬입니다.
- $X'$는 $X$의 전치 행렬입니다.
- $(X'X)^{-1}$의 $X'X$역행렬입니다.
농도 $i$ 번째 레버리지 $h_i$는 Hat Matrix $H$의 $i(행), i(열)$번째 대각 원소 값이다.
하지만, 검정곡선은 변수 농도가 1개인 단순 회귀분석은 다음과 같은 수식으로 계산된다.
$$h_i = \frac{1}{n} + \frac{(x_i - \bar{x})^2}{\sum_{i=1}^{n}(x_i - \bar{x})^2}$$
엑셀 함수를 이용해서 행렬과 수식으로 모두 계산된 결과 동일한 것으로 확인했다.
허용 기준은 $h_i=\dfrac{1.96\times p}{n}$으로 p는 상수항의 개수를 뜻한다.
일차 방정식인 경우 p=2로 적용되고, n은 설정 농도의 개수이다.
기준값을 초과하는 농도는 지렛대 효과가 나타난다고 평가된다.
* Mahalanobis distances (MD) 계산 방법
MD 계산 방법도 행렬 계산법이 기본 내용이다. 수식은 다음과 같다.
$$MD^2=(X-\bar{X})C^{-1}(X-\bar{X})^T $$
검정곡선에서 변수 농도가 1개인 단순 회귀분석은 다음과 같은 수식으로 계산된다.
$${MD_i}^2=\dfrac{(x_i-\bar{x})^2}{{s_x}^2}$$
- $s_x$는 농도의 표준편차 값으로 계산식에서는 제곱한 값을 사용하기 때문에 분산을 의미한다.
${MD_i}^2$은 표준화된 제곱값으로 카이제곱 분포 (chi-square distribution)을 나타낸다.
허용 기준은유의 수준 (5%)과 자유도 (p-1)를 적용한 카이제곱 분포에서 카이제곱 값을 사용한다.
카이제곱 값을 기준으로 벗어난 값이라면 분포에서 멀어진 값으로 평가되고
농도 범위 분포에서 벗어난 것으로 평가되어 지렛대 효과가 나타난다고 평가된다.
- 지렛대 효과 검증과 검정곡선 회수율 결과 -
앞서 소개한 Data 1, 2의 검정곡선 데이터의 지렛대 효과 검증한 결과 hat matrix ($h_i$), MD는 다음과 같다.
| [Data 1] Concentration | $h_i$ | $MD^2$ |
| 300 | 0.417 | 2.042 |
| 400 | 0.274 | 1.042 |
| 500 | 0.179 | 0.375 |
| 600 | 0.131 | 0.042 |
| 700 | 0.131 | 0.042 |
| 800 | 0.179 | 0.375 |
| 900 | 0.274 | 1.042 |
| 1000 | 0.417 | 2.042 |
| Critical Value | 0.490 | 3.841 |
농도 범위 300~1000에서 동일한 간격으로 설정된 농도의 지렛대 효과 검증 결과는
모든 농도에서 계산된 $h_i$, $MD^2$ 값이 허용 기준 (Critical value)를 초과하지 않았다.
| [Data 2] Concentration | $h_i$ | $MD^2$ |
| 7.8125 | 0.194 | 0.486 |
| 15.625 | 0.190 | 0.455 |
| 31.25 | 0.182 | 0.397 |
| 62.5 | 0.167 | 0.291 |
| 125 | 0.143 | 0.129 |
| 250 | 0.125 | 0.000 |
| 500 | 0.200 | 0.527 |
| 1000 | 0.799 | 4.715 |
| Critical Value | 0.490 | 3.841 |
연속 희석 방법으로 설정된 농도에서 지렛대 효과 검증 결과는
가장 높은 농도 1000에서 계산된 $h_i$, $MD^2$ 값이 허용 기준 (Critical value)를 초과했다.
지렛대 효과를 나타내는 농도는 1000이고, 이 농도의 측정값이 RSD 2% 이하의 재현성을 나타내지만,
측정값이 y 축 일정 범위에서 흔들리는 현상으로 아래 농도의 계산된 농도의 오차가 증가되는 현상이 발생된 것이다.
지렛대 효과를 원인은 1000 농도가 다른 농도에 비해서 많이 벗어나기 때문에 나타난 현상으로
균등하게 분배된 농도를 설정해서 중앙의 농도를 높이거나 농도 범위를 줄이는 수정이 필요하다.
- 지렛대 효과 검증 ($h_i$, $MD^2$)의 한계점 -
지렛대 효과 검증에 사용된 hat matrix, MD는 절대적인 평가 방법으로 사용될 수 없는 한계점이 있다.
계산된 $h_i$, $MD^2$ 값이 허용 기준을 초과하더라도 수식의 회수율에 꼭 문제를 일으키지 않는다.
[Data 3] 농도 설정은 Data 1과 동일한 농도 범위에서 설정 농도만 균등하게 분배하지 않고
연속 희석 방법과 유사한 패턴 (낮은 농도에 많이 분포)을 나타내는 농도를 설정하였다.

이전과 동일한 설정 방법으로 데이터를 만들어서 수식을 확인하였다.
| Concentration | Test 1 | Test 2 | Test 3 | Test 4 | Mean | RSD |
| 300 | 30427 | 29950 | 30186 | 29880 | 30111 | 0.8% |
| 310 | 30563 | 31005 | 30791 | 31031 | 30848 | 0.7% |
| 320 | 32424 | 31930 | 32558 | 31527 | 32110 | 1.5% |
| 350 | 34537 | 35059 | 34946 | 35315 | 34964 | 0.9% |
| 400 | 40342 | 39351 | 40320 | 39364 | 39844 | 1.4% |
| 500 | 49725 | 50055 | 49944 | 50469 | 50048 | 0.6% |
| 700 | 70395 | 69483 | 70229 | 68680 | 69697 | 1.1% |
| 1000 | 99042 | 101665 | 99784 | 100928 | 100355 | 1.2% |
| Slop | 98.9 | 101.9 | 99.6 | 100.7 | 100.3 | 1.3% |
| Intercept | 442.0 | -858.5 | 289.8 | -448.5 | -143.8 | -427.7% |
| $R^2$ | 0.99964 | 0.99957 | 0.99989 | 0.99925 | 0.99959 | 0.026% |
검정곡선의 기울기와 절편 결과는 이전 데이터와 큰 차이가 없는 것으로 확인된다.
Data 3의 지렛대 효과를 검증한 결과는 다음과 같다.
| [Data 3] Concentration | $h_i$ | $MD^2$ |
| 300 | 0.205 | 0.558 |
| 310 | 0.196 | 0.499 |
| 320 | 0.188 | 0.444 |
| 350 | 0.167 | 0.297 |
| 400 | 0.142 | 0.118 |
| 500 | 0.126 | 0.004 |
| 700 | 0.233 | 0.754 |
| 1000 | 0.743 | 4.326 |
| Critical Value | 0.490 | 3.841 |
Data 2와 동일하게 가장 높은 농도가 지렛대 효과가 있는 것으로 확인되었다.
지렛대 효과가 계산 농도에도 영향을 미치는지 확인한 회수율 결과는 다음과 같다.
| Concentration | Recovery (Test 1) |
Recovery (Test 2) |
Recovery (Test 3) |
Recovery (Test 4) |
Absolute Error % (Cumulative Maximum) |
| 300 | 99.6% | 100.9% | 99.4% | 100.8% | 1.5% |
| 310 | 99.6% | 100.9% | 99.5% | 100.7% | 1.4% |
| 320 | 99.7% | 100.8% | 99.5% | 100.7% | 1.2% |
| 350 | 99.8% | 100.5% | 99.6% | 100.6% | 1.0% |
| 400 | 99.9% | 100.2% | 99.7% | 100.4% | 0.7% |
| 500 | 100.2% | 99.8% | 99.8% | 100.2% | 0.8% |
| 700 | 100.4% | 99.3% | 100.0% | 99.9% | 1.2% |
| 1000 | 100.6% | 99.0% | 100.1% | 99.7% | 1.5% |
회수율 결과에서는 모든 농도의 오차 범위가 재현성 RSD 2% 보다 낮은 것으로 확인되었다.
지렛대 효과가 있을 것으로 예상되었지만, 실제로 수식에 영향을 미치지 않는 것으로 나타났다.
이와 같이 지렛대 효과 검증 방법인 hat matrix, MD는 농도 계산의 문제까지 정확한 예측이 불가하다.
hat matrix, MD 검증 방법은 설정된 농도가 다른 농도와 떨어진 척도를 계산하고
지렛대 효과가 나타날 가능성을 예측하는 도구로 사용될 수 있는 것이다.
특히 농도 범위가 좁은 경우 (가장 높은 농도 / 가장 낮은 농도 < 10) 이하인 경우에는
hat matrix, MD 검증 방법이 지렛대 효과를 예측하는데 정확도가 낮을 수 있다는 것을 유의해야 한다.
위에서 설명하고 확인된 데이터는 실제와 비슷한 모의 데이터로
지렛대 효과를 확인하기 위해서 만들어진 데이터이다.
실제 분석에서는 농도에 차이로 발생되는 재현성 차이, 실제 장비의 농도별 측정값의 비율의 차이 등등 영향이 발생된다.
다른 변수들로 hat matrix, MD 검증 방법이 예측에서 벗어난 결과를 나타낼 수 있다는 것을 참고해야 한다.
하지만, 검정곡선의 오류를 찾는 데 있어서 농도 설정의 문제점을 파악하는데 도움이 될 수 있고
문제점을 해결하는데 활용될 수 있기 때문에 내용을 소개하였다.
자세한 내용은 엑셀 파일을 참고하면 계산 내용과 관련된 엑셀 수식을 확인할 수 있다.
위 내용을 이해하는 도움이 되도록 엑셀 파일에는 다른 패턴의 농도 설정 데이터도 같이 포함되어 있다.
'기기분석 데이터' 카테고리의 다른 글
| 검정곡선 (Calibration Curve) 표준물질의 반복 측정은 언제 필요한가? (0) | 2025.06.02 |
|---|---|
| [Excel & Python] 비선형 검정곡선 : Weighted 4-Parameter Equation (0) | 2025.04.10 |
| [Excel+Python] 비선형 검정곡선 만들기 : 4-Parameter Equation (0) | 2025.04.05 |
| [Excel] 비선형 검정곡선 만들기 : 4-Parameter Equation (0) | 2025.04.03 |
| [Excel] 회귀분석 (Regression) - 이차방정식 (Quadratic Equation) (0) | 2024.10.21 |