t-test bắt cặp | series thống kê cho KHDL bài 16

thống kê cho khdl bài 16 - t-test bắt cặp

1. t-test bắt cặp là gì?

t-test bắt cặp (một số bài gọi là t-test phụ thuộc) hay còn gọi là paired sample t-test, là một kỹ thuật kiểm định thống kê dùng để so sánh giá trị trung bình của hai nhóm liên quan.

Mục tiêu của phương pháp này là kiểm tra xem có sự khác biệt có ý nghĩa thống kê giữa hai nhóm đo lường được thực hiện trên cùng một đối tượng hay không.

Ví dụ, nếu bạn muốn kiểm tra xem liệu một liệu pháp giảm cân có hiệu quả hay không.

Đầu tiên bạn có thể đo cân nặng của các đối tượng trước điều trị. Sau đó tiến hành đo lại cân nặng trên cùng đối tượng sau khi điều trị.

Kiểm định này sẽ giúp bạn xác định xem sự thay đổi này có ý nghĩa thống kê hay chỉ là sự ngẫu nhiên.

giới thiệu về t-test bắt cặp

>>>> Xem thêm: So sánh t-test bắt cặp với t-test độc lập

2. Công thức tính t-test bắt cặp

Để thực hiện kiểm định t-test này, bạn cần thực hiện các bước tính toán sau:

Bước 0: Đưa ra giả thuyết

Chọn mức ý nghĩa [math]\alpha[/math] mong muốn (thường là 0.05)

[math]H_0[/math]: Không có sự khác biệt nào giữa nhóm đo lường

[math]H_1[/math]: Có sự khác biệt có ý nghĩa thống kê giữa 2 nhóm đo lường.

Ở đây tùy vào yêu cầu mà chúng ta cũng có t-test 2 đuôi và 1 đuôi như những kiểm định khác.

Bước 1: Tính sự khác biệt giữa mỗi cặp giá trị

Giả sử bạn có hai tập dữ liệu: [math]X_1, X_2, \dots, X_n[/math]​ và [math]Y_1, Y_2, \dots, Y_n[/math]​.

Mỗi cặp giá trị [math](X_i, Y_i)[/math] đại diện cho hai lần đo lường trên cùng một đối tượng. Sự khác biệt giữa các cặp giá trị được tính bằng:

[math]D_i = X_i – Y_i[/math]

Bước 2: Tính trung bình và độ lệch chuẩn của các sự khác biệt

Tính trung bình của các sự khác biệt:

[math]\bar{D} = \frac{1}{n} \sum_{i=1}^{n} D_i[/math]

Và độ lệch chuẩn của các sự khác biệt:

[math]s_D = \sqrt{\frac{1}{n-1} \sum_{i=1}^{n} (D_i – \bar{D})^2}[/math]

Bước 3: Tính giá trị t tới hạn trong kiểm định t-test bắt cặp

Giá trị t tới hạn (t-critical) được tính theo công thức sau:

[math]t_c = \frac{\bar{D}}{s_D / \sqrt{n}}[/math]

Trong đó:

  • [math]\bar{D}[/math] là trung bình của các sự khác biệt,
  • [math]s_D[/math]​ là độ lệch chuẩn của các sự khác biệt,
  • [math]n[/math] là số cặp dữ liệu.

Bước 4: Kiểm định giả thuyết

Cuối cùng, bạn so sánh giá trị [math]t_c[/math] tính được với giá trị t tới hạn từ bảng phân phối t với bậc tự do là [math]n-1[/math].

Nếu giá trị [math]t_c[/math] tính được vượt qua giá trị t tới hạn, bạn bác bỏ giả thuyết không và kết luận rằng có sự khác biệt có ý nghĩa thống kê giữa hai nhóm.

>>>> Xem thêm: t-test một mẫu, lại là một loại t-test nữa!!

3. Ví dụ về t-test bắt cặp

Giả sử bạn có dữ liệu về huyết áp của 10 bệnh nhân trước và sau khi dùng một loại thuốc. Dưới đây là các số liệu huyết áp của 10 bệnh nhân trước và sau điều trị:

Bệnh NhânTrước Điều TrịSau Điều TrịSự Khác Biệt (D)
114013010
215014010
31601555
414513510
517016010
615514510
716015010
815014010
916515510
1018017010

Bước 0: Đưa ra giả thuyết.

Chọn mức ý nghĩa [math]\alpha = 0.05[/math].

  • [math]H_0[/math]: Không có sự khác biệt nào về huyết áp trước và sau khi dùng thuốc
  • [math]H_1[/math]: Có sự khác biệt có ý nghĩa thống kê của huyết áp sau khi dùng thuốc điều trị

Bước 1: Tính sự khác biệt giữa các giá trị trước và sau điều trị.

Giá trị [math]D[/math] đã được tính ở cột cuối cùng.

Bước 2: Tính trung bình và độ lệch chuẩn của các sự khác biệt.

Trung bình sự khác biệt:

[math]\bar{D} = \frac{10 + 10 + 5 + 10 + 10 + 10 + 10 + 10 + 10 + 10}{10} = 9[/math]

Độ lệch chuẩn:

[math]s_D = \sqrt{\frac{1}{9} \sum_{i=1}^{10} (D_i – 9)^2} = 1.58[/math]

Bước 3: Tính giá trị t tới hạn.

[math]t_c = \frac{9}{1.58 / \sqrt{10}} = 18.99[/math]

Bước 4: So sánh và kết luận

So sánh giá trị [math]t_c[/math] và giá trị t tới hạn từ bảng phân phối t với bậc tự do: [math]d_f=9[/math] (vì có 10 bệnh nhân).

Nếu bạn sử dụng mức ý nghĩa [math]\alpha = 0.05[/math], giá trị t tới hạn là khoảng 2.262.

Vì giá trị [math]t_c =18.99[/math] lớn hơn giá trị t tới hạn 2.262, bạn bác bỏ giả thuyết không và kết luận rằng thuốc có ảnh hưởng đáng kể đến huyết áp của bệnh nhân.

4. Kết luận

t-test bắt cặp là một công cụ rất hữu ích để kiểm tra sự khác biệt giữa hai nhóm có liên quan, đặc biệt khi bạn muốn so sánh trước và sau một can thiệp hoặc thay đổi.

Phương pháp này giúp bạn đưa ra các kết luận có căn cứ dựa trên dữ liệu và xác định xem sự khác biệt có thực sự có ý nghĩa thống kê hay không.

Bằng cách áp dụng t-test bắt cặp, bạn có thể kiểm tra giả thuyết của mình một cách chính xác, từ đó hỗ trợ việc đưa ra các quyết định trong nhiều lĩnh vực, từ y tế, giáo dục cho đến nghiên cứu khoa học và công nghiệp.

5. Lưu ý quan trọng khi làm kiểm định paired t-test

Để làm được kiểm định này thì dữ liệu của bạn cần tuân thủ theo các điều kiện sau:

  • Đối tượng thử nghiệm cần độc lập với nhau. Nghĩa là kết quả của đối tượng này không ảnh hưởng đến kết quả của đối tượng khác.
  • Dữ liệu tuân theo phân phối chuẩn (hoặc gần chuẩn)
  • Mỗi cặp đo lường phải được thực hiện trên cùng một đối tượng. Ví dụ: cân nặng của một người trước và sau khi dùng thuốc giảm cân

Điều kiện về dữ liệu thuộc phân phối chuẩn là rất quan trọng đối với dữ liệu có cỡ mẫu nhỏ (nhỏ hơn 30)

>>>>Xem thêm: tại sao lại cần cỡ mẫu lớn hơn 30?

Ví dụ về dữ liệu phân bố chuẩn khi vẽ Q-Q plot (biểu đồ so sánh phân phối chuẩn), ta sẽ được:

Ví dụ về dữ liệu phân bố chuẩn

>>>> Xem thêm: confidence interval là gì?

Code python thể hiện biểu đồ trên:

import numpy as np
import scipy.stats as stats
import matplotlib.pyplot as plt

# Dữ liệu ví dụ
np.random.seed(1)
data = np.random.normal(loc=0, scale=1, size=30)
n = len(data)

# Sắp xếp dữ liệu
data_sorted = np.sort(data)

# Quantiles lý thuyết từ phân phối chuẩn
theoretical_q = stats.norm.ppf((np.arange(1, n+1) - 0.5) / n)

# Bootstrap để tính dải CI
B = 2000   # số lần bootstrap
simulated = np.random.normal(size=(B, n))
simulated.sort(axis=1)

alpha = 0.05
lower_band = np.percentile(simulated, 100*alpha/2, axis=0)
upper_band = np.percentile(simulated, 100*(1-alpha/2), axis=0)

# Vẽ Q-Q plot
plt.scatter(theoretical_q, data_sorted, color="black", s=20)
plt.plot(theoretical_q, theoretical_q, 'r-')  # đường chuẩn
plt.plot(theoretical_q, lower_band, 'r--')    # band dưới
plt.plot(theoretical_q, upper_band, 'r--')    # band trên

plt.title("Normal Quantile Plot with Bootstrap CI")
plt.xlabel("Theoretical Quantiles")
plt.ylabel("Sample Quantiles")
plt.show()

>>>> Tìm hiểu về z-test

>>>> Học thống kê cho khoa học dữ liệu từ đầu

Related posts

t-test độc lập | Series thống kê cho KHDL bài 15

Lập trình động (dynamic programming) | Tự học tin sinh học bài 2

Ma trận điểm (dot matix) | Tự học tin sinh học bài 1