Sebagai kaedah statistik yang penting, Ujian Chi-Square ialah salah satu kaedah ujian yang biasa digunakan untuk hubungan antara pembolehubah kategori. Dalam Python, perpustakaan SciPy menyediakan fungsi chisquare untuk melaksanakan ujian chi-square. Artikel ini akan memperkenalkan prinsip, penggunaan dan contoh pelaksanaan ujian khi kuasa dua untuk membantu pembaca lebih memahami dan menggunakan ujian khi kuasa dua.
1. Prinsip ujian khi kuasa dua
Idea teras ujian khi kuasa dua adalah untuk membandingkan perbezaan antara nilai cerapan sebenar dan nilai teori antara kedua-duanya adalah signifikan, bermakna terdapat perbezaan antara kedua-dua pembolehubah. Ujian khi kuasa dua menganalisis data dalam dimensi berbeza secara berbeza Artikel ini memperkenalkan prinsip ujian khi kuasa dua dua dimensi.
Dalam kes jadual dua dimensi, ujian khi kuasa dua pertama mengandaikan bahawa tiada hubungan antara dua pembolehubah, mengira nilai jangkaan E berdasarkan andaian, kemudian mengira nilai khi kuasa dua berdasarkan nilai cerapan sebenar O dan nilai jangkaan E, dan akhirnya lulus Cari jadual atau lakukan pengiraan untuk melaksanakan ujian keertian untuk menentukan sama ada hipotesis itu benar.
Formula pengiraan khusus adalah seperti berikut:
Nilai Chi-square χ²=(O-E)²/E
Di mana O ialah nilai cerapan sebenar dan E ialah jangkaan nilai.
Jika nilai khi kuasa dua lebih besar, hubungan antara dua pembolehubah adalah lebih signifikan, dan hipotesis ditolak sebaliknya, jika nilai khi kuasa dua lebih kecil, hubungannya kurang signifikan, dan hipotesis diterima.
2. Penggunaan ujian Chi-square
Sebelum melakukan ujian Chi-square, anda perlu menyediakan data. Secara umumnya, data wujud dalam bentuk jadual dua dimensi, termasuk kedua-dua nilai cerapan sebenar O dan nilai jangkaan E, seperti berikut:
类别A 类别B
Pembolehubah 1 70 30
Pembolehubah 2 40 60
Antaranya, 70 mewakili bilangan persilangan antara pembolehubah 1 dan kategori A.
Gunakan perpustakaan SciPy dalam Python untuk mengira nilai khi kuasa dua dan nilai p yang sepadan dengan mudah. Kodnya adalah seperti berikut:
from scipy.stats import chisquare import numpy as np obs = np.array([[70, 30], [40, 60]]) #实际观测值 exp = np.array([[50, 50], [50, 50]]) #期望值 stat, pval = chisquare(obs.ravel(), f_exp=exp.ravel()) print(stat, pval)
Antaranya, fungsi chisquare digunakan untuk mengira nilai chi-square dan nilai p yang sepadan, obs dan exp masing-masing mewakili nilai cerapan sebenar dan nilai jangkaan, dan ravel () fungsi menukar tatasusunan dua dimensi kepada tatasusunan satu dimensi , parameter f_exp menentukan nilai yang dijangkakan Apabila ditetapkan kepada Tiada, obs.sum()/4 digunakan sebagai nilai yang dijangkakan.
Selepas memperoleh nilai khi kuasa dua dan nilai p, anda perlu menentukan sama ada hipotesis itu benar. Secara amnya, aras keertian α ditetapkan kepada 0.05 Jika nilai p kurang daripada atau sama dengan α, hipotesis nol ditolak, menunjukkan bahawa terdapat hubungan antara kedua-dua pembolehubah jika tidak, hipotesis nol diterima, menunjukkan bahawa tiada hubungan.
Kodnya adalah seperti berikut:
alpha = 0.05 if pval <= alpha: print("Reject null hypothesis, variables are related.") else: print("Accept null hypothesis, variables are independent.")
3. Contoh pelaksanaan
Yang berikut menggunakan contoh mudah untuk menunjukkan penggunaan ujian khi kuasa dua. Katakan ujian A/B dijalankan pada tapak web e-dagang untuk menguji sama ada masa log masuk pengguna memberi kesan kepada masa menyemak imbas tapak web tersebut adalah seperti berikut:
浏览时长<10s 浏览时长>=10s
Log Masuk A 1000 2000<. 🎜>Log Masuk B 1500 2500
浏览时长<10s 浏览时长>=10s
Log Masuk B 1300 1900
obs = np.array([[1000, 2000], [1500, 2500]]) #实际观测值 exp = np.array([[1200, 1800], [1300, 1900]]) #期望值 stat, pval = chisquare(obs.ravel(), f_exp=exp.ravel()) print(stat, pval) alpha = 0.05 if pval <= alpha: print("Reject null hypothesis, variables are related.") else: print("Accept null hypothesis, variables are independent.")
Atas ialah kandungan terperinci Bagaimana untuk menggunakan ujian chi-square untuk analisis statistik dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!