Dữ liệu chuẩn

Thiết kế thí nghiệm với Python

James Chapman

Curriculum Manager, DataCamp

Phân phối chuẩn

 

  • Dạng "chuông" quen thuộc
  • Liên quan đến z-score

$$ {z} = \frac{x-\mu}{\sigma}$$

  • Mean = 0, std = 1
    • "Điểm này cách trung bình bao nhiêu độ lệch chuẩn?"
    • "Xác suất nhận được điểm số này là bao nhiêu?"

 

Biểu đồ đường cong hình chuông điển hình, đường cong màu xanh trên nền trắng.

Thiết kế thí nghiệm với Python

Dữ liệu chuẩn và kiểm định thống kê

 

  • Bắt buộc cho kiểm định tham số
  • Kiểm định phi tham số: không giả định dữ liệu chuẩn

 

Biểu đồ đường cong hình chuông điển hình, đường cong màu xanh trên nền trắng.

Thiết kế thí nghiệm với Python

Chuẩn, Z và alpha

 

  • Liên hệ quan trọng với mức ý nghĩa ($\alpha$)
  • So sánh p-value với $\alpha$
  • Xác suất lỗi loại I

 

Một phân phối chuẩn với hai vùng nhỏ ở hai đuôi tô đen

Thiết kế thí nghiệm với Python

Trực quan hóa dữ liệu chuẩn

 

sns.displot(data=salaries,
            x='salary',
            kind="kde")
plt.show()

 

Một phân phối hình chuông cao hơn và hẹp hơn bình thường, nhưng vẫn giữ dạng chuông điển hình

Thiết kế thí nghiệm với Python

Biểu đồ QQ

QQ plot: so sánh dữ liệu với một phân phối cụ thể

from statsmodels.graphics.gofplots import qqplot
from scipy.stats.distributions import norm
qqplot(salaries['salary'], 
       line='s', 
       dist=norm)
plt.show()
  • Lý tưởng: điểm ôm sát đường
  • Kém: cong vồng ở hai đầu

 

Biểu đồ QQ nơi các điểm chủ yếu ôm sát đường 45 độ ở giữa

Biểu đồ QQ nơi các điểm ở giữa ôm sát đường 45 độ nhưng ở hai đầu thì cong vào trong tạo thành đường cong

Thiết kế thí nghiệm với Python

Kiểm định tính chuẩn

 

  • Shapiro-Wilk (tốt cho bộ dữ liệu nhỏ)
  • D'Agostino $K^2$ (dùng độ nhọnđộ lệch)
  • Anderson-Darling (trả về danh sách giá trị)

 

$H_0$ = "Dữ liệu được rút ra từ Phân phối Chuẩn"

Thiết kế thí nghiệm với Python

Kiểm định Shapiro-Wilk

 

from scipy.stats import shapiro
alpha = 0.05

stat, p = shapiro(salaries['salary']) print(f"p: {round(p,4)} test stat: {round(stat,4)}")
p: 0.8293 test stat: 0.9956
  • p > alpha
    • Không bác bỏ $H_0$ → có khả năng chuẩn
Thiết kế thí nghiệm với Python

Kiểm định Anderson-Darling

from scipy.stats import anderson
result = anderson(x=salaries['salary'], dist="norm")
print(round(result.statistic,4))
print(result.significance_level)
print(result.critical_values)
0.2748
[15.  10.   5.   2.5  1. ]
[0.572 0.651 0.781 0.911 1.084]
  • 0.2748 < [0.572 0.651 0.781 0.911 1.084]
    • Không bác bỏ $H_0$ → có khả năng chuẩn
Thiết kế thí nghiệm với Python

Cùng luyện tập nào!

Thiết kế thí nghiệm với Python

Preparing Video For Download...