PENGUJIAN HIPOTESIS SATU SAMPEL
10.5 T UNTUK SATU
Dalam contoh sebelumnya, Anda bekerja dengan skor IQ. Populasi skor IQ adalah distribusi normal dengan mean dan standar deviasi yang terkenal. Dengan demikian, Anda dapat bekerja dengan teorema limit pusat dan menggambarkan distribusi sampling mean sebagai distribusi normal. Anda kemudian dapat menggunakan z sebagai statistik uji.
Namun, di dunia nyata, Anda biasanya tidak memiliki kemewahan bekerja dengan populasi yang terdefinisi dengan baik. Anda biasanya memiliki sampel kecil, dan Anda biasanya mengukur sesuatu yang tidak begitu dikenal seperti IQ. Intinya adalah Anda sering tidak mengetahui parameter populasi, juga tidak tahu apakah populasi terdistribusi normal.
Jika itu masalahnya, Anda menggunakan data sampel untuk memperkirakan simpangan baku populasi, dan Anda memperlakukan distribusi sampel rata-rata sebagai anggota keluarga distribusi yang disebut distribusi-t. Anda menggunakan t sebagai statistik uji.
Dalam Bab 9, saya memperkenalkan distribusi ini dan menyebutkan bahwa Anda membedakan anggota keluarga ini dengan parameter yang disebut derajat kebebasan (df).
Rumus untuk statistik uji adalah:
Pikirkan df sebagai penyebut estimasi varians populasi. Untuk pengujian hipotesis di bagian ini, yaitu N-1, di mana N adalah jumlah skor dalam sampel. Semakin tinggi df, semakin dekat distribusi t menyerupai distribusi normal.
Berikut ini contohnya. FarKlempt Robotics, Inc., memasarkan robot mikro. Perusahaan mengklaim bahwa produknya rata-rata empat cacat per unit. Sebuah kelompok konsumen percaya rata-rata ini lebih tinggi. Kelompok konsumen mengambil sampel sembilan robot mikro FarKlempt dan menemukan rata-rata tujuh cacat, dengan standar deviasi 3,12. Uji hipotesisnya adalah:
Rumusnya adalah:
Bisakah Anda menolak H0? Fungsi R di bagian berikutnya memberitahu Anda.
t Pengujian di R
Saya melihat pratinjau fungsi t.test() di Bab 2 dan membicarakannya lebih detail di Bab 9. Di sini, Anda menggunakannya untuk menguji hipotesis.
Mulailah dengan data untuk FarKlemp Robotics:
Kemudian terapkan t.test(). Sebagai contoh, terlihat seperti ini:
Argumen kedua menentukan bahwa Anda menguji rata-rata yang dihipotesiskan 4, dan argumen ketiga menunjukkan bahwa hipotesis alternatif adalah bahwa rata-rata sebenarnya lebih besar dari 4.
Keluaran memberikan nilai-t dan nilai-p rendah menunjukkan bahwa Anda dapat menolak hipotesis nol dengan 𝛼 = 0,05. Fungsi t.test() ini serbaguna. Saya bekerja dengannya lagi di Bab 11 ketika saya menguji hipotesis tentang dua sampel.
Bekerja dengan t-Distributions
Sama seperti Anda dapat menggunakan awalan d, p, q, dan r untuk keluarga distribusi normal, Anda dapat menggunakan dt() (fungsi densitas), pt() (fungsi densitas kumulatif), qt() (kuantil), dan rt() (pembuatan angka acak) untuk keluarga distribusi-t.
Berikut adalah dt() dan rt() yang bekerja untuk distribusi-t dengan 12 df:
Saya tunjukkan cara menggunakan dt() lebih banyak di bagian selanjutnya. (Jauh lebih.
Percayalah padaku).
Untuk informasi kuantil tentang distribusi-t dengan 12 df:
The –Inf dan Inf memberitahu Anda bahwa kurva tidak pernah menyentuh sumbu x di kedua ekor. Untuk membangkitkan delapan (pembulatan) bilangan acak dari distribusi-t dengan 12 df:
Semua fungsi ini memberi Anda pilihan untuk bekerja dengan distribusi-t yang tidak berpusat di sekitar nol. Anda melakukan ini dengan memasukkan nilai untuk ncp (parameter noncentrality). Di sebagian besar aplikasi distribusi-t, noncentrality tidak muncul. Untuk kelengkapan, saya menjelaskan konsep ini secara lebih rinci dalam Lampiran 3 online.
Memvisualisasikan Distribusi-t
Memvisualisasikan distribusi sering kali membantu Anda memahaminya. Prosesnya bisa sedikit terlibat dalam R, tetapi itu sepadan dengan usaha. Gambar 9-7 menunjukkan tiga anggota keluarga distribusi-t pada grafik yang sama. Yang pertama memiliki df=3, yang kedua memiliki df=10, dan yang ketiga adalah distribusi normal standar (df=tak terhingga). Di bagian ini, saya menunjukkan cara membuat grafik itu di grafik dasar R dan di ggplot2.
Dengan salah satu metode, langkah pertama adalah menyiapkan vektor nilai yang akan digunakan oleh fungsi densitas:
Satu hal lagi dan saya akan membantu Anda memulai. Setelah grafik selesai, Anda akan meletakkan simbol tak terhingga, pada legenda untuk menunjukkan df untuk distribusi normal standar. Untuk melakukannya, Anda harus menginstal paket yang disebut grDevices: Pada tab Packages, klik Install, lalu di kotak dialog Install Packages, ketik grDevices dan klik Install. Ketika
Dengan grDevices terinstal, ini menambahkan simbol infinity ke legenda:
Merencanakan t dalam grafik R dasar
Mulailah dengan fungsi plot(), dan plot distribusi-t dengan 3 df:
Dua argumen pertama cukup jelas. Dua berikutnya menentukan jenis plot — type = "l" berarti plot garis (itu huruf kecil "L" bukan angka 1), dan lty = "dotted" menunjukkan jenis garis.
Argumen ylim menetapkan batas bawah dan atas sumbu y — ylim = c(0,.4). Sedikit mengutak-atik menunjukkan bahwa jika Anda tidak melakukan ini, kurva berikutnya akan terpotong di bagian atas. Dua argumen terakhir memberi label sumbu. Gambar 10.3 menunjukkan grafik sejauh ini:
Gambar 10.3 distribusi t dengan 3 df, basis R.
Dua baris berikutnya menambahkan distribusi-t untuk df=10, dan untuk normal standar (df = tak terhingga):
Garis untuk standar normal adalah solid (nilai default untuk lty). Gambar 10.4 menunjukkan kemajuan. Yang hilang hanyalah legenda yang menjelaskan kurva mana.
Gambar 10.4 Tiga distribusi untuk mencari legenda.
Salah satu keuntungan dari basis R adalah memposisikan dan mengisi legenda tidak sulit:
Argumen pertama menempatkan legenda di sudut kanan atas. Yang kedua memberi legenda itu judulnya. Argumen ketiga adalah vektor yang menentukan apa yang ada di legenda. Seperti yang Anda lihat, elemen pertama adalah ekspresi tak terhingga yang saya tunjukkan sebelumnya, sesuai dengan df untuk normal standar. Elemen kedua dan ketiga adalah df untuk dua distribusi t yang tersisa. Anda memesannya dengan cara ini karena itulah urutan kurva yang muncul di tengahnya. Argumen lty adalah vektor yang menentukan urutan linetypes (mereka sesuai dengan df). Argumen terakhir bty="n" menghapus batas dari legenda. Dan ini menghasilkan Gambar 10.5.
Merencanakan t di ggplot2
Pendekatan tata bahasa-grafis membutuhkan lebih banyak upaya daripada basis R.
Tapi ikuti terus dan Anda akan belajar banyak tentang ggplot2.
Anda mulai dengan memasukkan angka-angka yang relevan ke dalam bingkai data:
Gambar 10.5 Grafik terakhir, termasuk legenda.
Enam baris pertama dari bingkai data terlihat seperti ini:
Itu adalah bingkai data yang cukup bagus, tetapi dalam format lebar. Seperti yang saya tunjukkan di Bab 3, ggplot() lebih memilih format panjang — yang merupakan tiga kolom kepadatan- angka yang ditumpuk menjadi satu kolom. Untuk mendapatkan format itu — disebut membentuk kembali data — pastikan Anda telah menginstal paket reshape2. Pilih kotak centangnya pada tab Paket dan Anda siap untuk pergi.
Mengubah dari format lebar ke format panjang disebut melebur data, jadi fungsinya adalah:
Argumen id menetapkan bahwa t.values adalah variabel yang jumlahnya tidak ditumpuk dengan yang lain. Anggap saja sebagai variabel yang menyimpan data. Enam baris pertama t.frame.melt adalah:
Itu selalu merupakan ide yang baik untuk memiliki nama kolom yang bermakna, jadi . . .
Sekarang untuk satu hal lagi sebelum saya mulai membuat grafik. Ini adalah vektor yang akan berguna saat Anda meletakkan sumbu x:
Mulailah dengan ggplot():
Argumen pertama adalah bingkai data. Pemetaan estetika memberi tahu Anda bahwa t berada pada sumbu x, kepadatan berada pada sumbu y, dan data dikelompokkan ke dalam kelompok yang ditentukan oleh variabel df.
Ini adalah plot garis, jadi fungsi geom yang tepat untuk ditambahkan adalah geom_line:
Fungsi geom dapat bekerja dengan pemetaan estetika. Pemetaan estetika di sini memetakan df ke jenis garis.
Ubah skala sumbu x sehingga berubah dari -4 ke 4, dua kali. Di sinilah untuk menggunakan vektor x.axis.values itu:
Argumen pertama menetapkan titik putus untuk sumbu x, dan argumen kedua memberikan label untuk titik tersebut. Menempatkan tiga pernyataan ini bersama-sama.
Hasil pada Gambar 10.6. Salah satu keunggulan ggplot2 adalah kode tersebut secara otomatis menghasilkan legenda.
GAMBAR 10.6 Tiga kurva distribusi-t, diplot dalam ggplot2.
Anda masih memiliki beberapa pekerjaan yang harus dilakukan. Pertama-tama, penetapan linetype default bukanlah yang Anda inginkan, jadi Anda harus mengulanginya:
Empat pernyataan:
menghasilkan Gambar 10.7.
Gambar 10.7 Tiga kurva distribusi-t, dengan tipe garis dipindahkan.
Seperti yang Anda lihat, item dalam legenda tidak sesuai dengan urutan kurva yang muncul di tengahnya. Saya seorang yang ngotot untuk itu. Saya pikir itu membuat grafik lebih mudah dipahami ketika elemen grafik dan elemen legenda disinkronkan. ggplot2 menyediakan fungsi panduan yang memungkinkan Anda mengontrol detail legenda. Untuk membalik urutan linetypes dalam legenda, inilah yang Anda lakukan:
Menempatkan semua kode bersama-sama, akhirnya, menghasilkan Gambar 10.8.
Saya serahkan kepada Anda sebagai latihan untuk menamai kembali sumbu y f(t).
Grafik Base R versus ggplot2: Ini seperti mengendarai mobil dengan transmisi standar versus mengemudi dengan transmisi otomatis — tapi saya tidak selalu yakin yang mana!
Gambar 10.8 Produk akhir, dengan legenda yang disusun ulang.
Satu hal lagi tentang ggplot2
Saya bisa meminta Anda merencanakan semua ini tanpa membuat dan membentuk kembali bingkai data. Pendekatan alternatif adalah menetapkan NULL sebagai sumber data, memetakan t.values ke sumbu x, lalu menambahkan tiga pernyataan geom_line. Masing-masing pernyataan tersebut akan memetakan vektor kepadatan (dibuat dengan cepat) ke sumbu y, dan masing-masing akan memiliki tipe garis sendiri.
Masalah dengan pendekatan itu? Ketika Anda melakukannya dengan cara itu, tata bahasa tidak secara otomatis membuat legenda. Tanpa bingkai data, tidak ada yang bisa membuat legenda. Ini seperti menggunakan ggplot() untuk membuat grafik R dasar. Apakah pernah ide yang baik untuk menggunakan pendekatan ini? Ya, benar — ketika Anda tidak ingin menyertakan legenda tetapi Anda ingin memberi anotasi pada grafik dengan cara lain. Saya memberikan contoh di bagian selanjutnya “Memvisualisasikan Distribusi Chi-Kuadrat.”