Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menggunakan ujian chi-square untuk analisis statistik dalam Python?

Bagaimana untuk menggunakan ujian chi-square untuk analisis statistik dalam Python?

王林
王林asal
2023-06-03 23:40:312300semak imbas

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

  1. Penyediaan data

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.

  1. Kira nilai khi kuasa dua berdasarkan data

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.

  1. Menguji hipotesis

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

Pertama, anda perlu mengira nilai jangkaan E. Nilai jangkaan yang dikira berdasarkan data adalah seperti berikut:

     浏览时长<10s      浏览时长>=10s

Log Masuk A 1200 1800

Log Masuk B 1300 1900

Gunakan kod Python untuk pengiraan dan ujian hipotesis seperti berikut:

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.")

Hasil akhir ialah: menolak hipotesis nol, menunjukkan bahawa kaedah log masuk pengguna mempunyai kesan ke atas masa menyemak imbas .

4. Ringkasan

Ujian chi-square ialah kaedah ujian yang biasa digunakan untuk perhubungan antara pembolehubah kategori, yang boleh menentukan sama ada terdapat hubungan antara dua pembolehubah. Dalam Python, ujian chi-square boleh dilakukan dengan mudah menggunakan fungsi chisquare yang disediakan oleh perpustakaan SciPy. Melalui pengenalan artikel ini, pembaca boleh lebih memahami dan menggunakan ujian khi kuasa dua, dan analisis statistik data boleh menjadi lebih piawai dan saintifik.

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!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:Apakah ORM dalam Python?Artikel seterusnya:Apakah ORM dalam Python?