Langsung ke konten utama

Penerapan Stratified Random Sampling dengan R

Penerapan stratified random sampling dengan R

Pada unggahan sebelumnya, kita telah belajar bersama bagaimana melakukan pengambilan sampel dengan Simple Random Sampling (SRS) dan Systematic Sampling. Pada bagian ini, kita akan meneruskan pembelajaran bersama kita mengenai salah satu jenis teknik sampling yang banyak digunakan dalam kegiatan statistik baik survei maupun eksperimen, yaitu Stratified Random Sampling atau disebut pula Sampling Acak Berlapis (SAB).

Dalam pemanfaatan SRS, pengambilan suatu sampel masih belum mempertimbangkan aspek keterwakilan sampel terhadap populasi. Hal itu memang dalam penggunaan SRS, populasi dianggap sebagai sebuah kesatuan utuh dan bersifat homogen. Oleh karena itu, untuk meminimkan standard error (SE) SRS, opsional yang dapat digunakan adalah menambah ukuran sampel. Namun, cara tersebut ternyata justru dinilai belum efisien karena sampel erat kaitannya dengan biaya, waktu, serta tenaga (SDM), kecuali sebelumnya telah diperoleh informasi tambahan (auxillary information) mengenai populasi. Di samping itu, suatu populasi dalam kenyataannya lebih banyak ditemukan bersifat heterogen ketimbang populasi yang elemen-elemennya bersifat homogen. Oleh karena itulah kemudian pemecahan populasi menjadi sub-sub populasi menjadi perlu dilakukan. Pemecahan populasi menjadi sub-sub populasi inilah yang kemudian memantik istilah strata atau lapisan.

Pada kenyataan di lapangan, setidaknya terdapat 2 jenis strata populasi yang tersedia, yaitu strata yang terbentuk secara alamiah dan strata yang terbentuk secara buatan (artificial). Beberapa contoh strata alamiah yaitu penduduk pesisir laut, penduduk wilayah pegununan, penduduk wilayah perkotaan, dan penduduk wilayah pedesaan. Sedangkan beberapa contoh strata buatan yaitu strata kelas dalam dunia pendidikan, strata penduduk menurut pendapatan rendah, menengah, dan atas.

Berdasarkan kedua jenis strata tersebut, pengambilan sampel strata atau Stratified Random Sampling dilakukan dengan tujuan memperoleh ukuran sampel yang memenuhi aspek keterwakilan untuk setiap strata yang ada. Contoh mudahnya, ketika sebuah riset bertujuan untuk memperoleh rata-rata pendapatan penduduk di suatu desa (informasi tambahan (auxillary information) sebagai dasar penstrataannya adalah pendidikan tertinggi yang ditamatkan), maka sampel yang terpilih haruslah mengakomodir keterwakilan penduduk menurut pendidikan tertinggi yang berhasil ditamatkan, SD, SMP, SMA, Diploma atau lebih. Dengan demikian, estimasi dari rata-rata pendapatan yang diperoleh benar-benar menggambarkan keseluruhan karakteristik populasi menurut pendidikan tertinggi yang ditamatkan.

Notasi yang digunakan dalam teknik Stratified Random Sampling 

L adalah jumlah lapisan (strata)

h adalah urutan strata; h = 1, 2, 3, ..., L

Nh adalah ukuran sub-populasi strata h

nh adalah ukuran sampel untuk strata h (ukuran masing-masing strata)

sh adalah standard deviasi yang diperoleh di lapangan

ch adalah biaya survei atau eksperimen yang dianggarkan, termasuk biaya variabel atau biaya tetap (fixed cost)

Jenis alokasi sampel pada teknik Stratified Random Sampling

1. Alokasi sembarang; dalam praktiknya, jenis alokasi sampel sembarang dalam Stratified Random Sampling sangat jarang digunakan sebab dalam pelaksanaan Stratified Random Sampling sendiri erat kaitannya dengan efisiensi biaya, waktu, dan tenaga. Bila dilakukan alokasi secara sembarang, besar kemungkinannya akan terjadi ketimpangan beban petugas, atau risiko lain misalnya sampel terpilih terlalu menyebar sehingga meningkatkan biaya pelaksanaan lapangan;

2. Alokasi sama; alokasi ini digunakan apabila varians dalam strata hampir sama (hampir homogen). Dengan alokasi yang sama membuat ukuran sampel terpilih di setiap strata akan sama besar;

3. Alokasi sebanding (proporsional); alokasi ini seringkali digunakan bila varians dalam strata juga hampir sama, namun ukuran sampel terpilihnya masih mempertimbangkan ukuran sub-populasi setiap strata. Pada akhirnya, sampel terpilih untuk setiap strata akan berbeda karena sebanding atau proporsional terhadap ukuran sub-populasi strata;

4. Alokasi Neyman; alokasi ini digunakan bila biaya survei atau eksperimen kurang mencukupi sehingga dilakukan pengalokasian biaya yang sama besar. Alokasi ini juga digunakan bila peneliti memperoleh informasi tambahan mengenai varians setiap strata sehingga alokasi yang terbentuk nantinya proporsional terhadap besarnya varians strata. Artinya, bila varians dalam strata besar, maka ukuran sampel strata akan besar pula dan demikian pula sebaliknya;

5. Alokasi Optimum; alokasi ini dilakukan dengan tujuan meminimumkan varians dengan biaya yang tersedia atau sebaliknya menggunakan biaya sekecil mungkin dengan konsekuensi varians bernilai tertentu.

Bagaimana penerapan Stratified Random Sampling dengan R?

Untuk melakukan praktikum kali ini, kita hanya fokus untuk alokasi sama, proporsional, alokasi Neyman, dan alokasi optimum minimum varians dengan biaya tertentu. Praktik untuk alokasi sama dan proporsional kita gunakan data dummy, sedangkan alokasi Neyman dan alokasi optimum minimum varians didasarkan pada contoh kasus 1 dan 2 berikut:

Kasus 1:

Baru-baru ini harga daging sapi kian melonjak. Seiring dengan meningkatnya permintaan daging nasional yang tidak mampu dipenuhi oleh daging sapi lokal mendorong pemerintah melakukan impor. Namun, harga daging sapi semakin merangkak naik. Harga daging sapi tembus Rp. 110.000,- per kg. Hal ini mendorong pemerintah melakukan peninjauan kembali mengenai potensi ternak sapi siap potong di berbagai daerah, salah satunya di Kecamatan Tutur, Pasuruan. Sebuah survei dilakukan untuk melihat ketersediaan daging sapi potong dengan sampel 3 desa, Desa Pungging, Desa Kalipucang, dan Desa Sumber Pitu. Diketahui, jumlah ternak sapi potong di 3 desa tersebut masing-masing 250, 700, dan 440 ekor. Hasil survei pendahuluan didapatkan standar deviasi masing-masing 0,11; 0,27; dan 0,32. Dengan menggunakan teknik Stratified Random Sampling alokasi Neyman, tentukan masing-masing ukuran sampel tiap desa (nh)?...

Kasus 2:

Ketidakpastian global demikian berimbas pada perekonomian dalam negeri, terutama terhadap harga-harga bahan makanan, semisal harga daging ayam. Untuk mengantisipasi adanya lonjakan harga daging ayam secara spontan dan tidak terkendali, Dinas Peternakan Halmahera Utara melakukan survei rata-rata harga daging ayam di Kecamatan Tobelo. Adapun sampel yang terpilih dalam pelaksanaan survei ada 7 dari 10 desa yang ada, yaitu Desa Gamsungi, Desa Kumo, Desa Gura, Desa Kakara A, Desa Wari, Desa Tagalaya, dan Desa Rawajaya. Masing-masing jumlah ayam di setiap desa adalah 78; 98; 150; 227; 381; 236; dan 88. Dari survei pendahuluan diketahui masing-masing standard deviasi sebesar 0,27; 1,15; 0,07; 3,21; 3,01; 0,67; dan 2,22. Sementara itu, biaya untuk pencacahan untuk masing-masing desa dalam ribuan diketahui sebesar 45; 50; 110; 150; 180; 210; dan 40. Bila biaya survei yang dianggarkan sebesar Rp. 800.000,- dan biaya tetapnya sebesar Rp. 700.000,-, maka tentukan masing-masin ukuran sampel setiap desa (nh) menggunakan alokasi optimum!...

Adapun praktik untuk 2 kasus dengan menggunakan data dummy dan 2 contoh kasus di atas dapat mengikuti beberapa langkah berikut:

#Stratified sampling dengan alokasi sama
id<- c(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20)
status <- c(1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2)
df <- data.frame(id,status)

#Melihat Data
df
##    id status
## 1   1      1
## 2   2      1
## 3   3      1
## 4   4      1
## 5   5      1
## 6   6      1
## 7   7      1
## 8   8      1
## 9   9      1
## 10 10      1
## 11 11      2
## 12 12      2
## 13 13      2
## 14 14      2
## 15 15      2
## 16 16      2
## 17 17      2
## 18 18      2
## 19 19      2
## 20 20      2
#Cara 1
#Memilih 10 sampel masing-masing strata 5 sampel
library(dplyr)
df %>%
  group_by(status) %>%
  sample_n(size = 5)
## # A tibble: 10 x 2
## # Groups:   status [2]
##       id status
##    <dbl>  <dbl>
##  1     8      1
##  2    10      1
##  3     6      1
##  4     5      1
##  5     2      1
##  6    17      2
##  7    14      2
##  8    15      2
##  9    20      2
## 10    16      2
#Stratified sampling dengan alokasi Sebanding
id <- c(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20)
status <- c(1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2)
df <- data.frame(id,status)

#Melihat Data
df
##    id status
## 1   1      1
## 2   2      1
## 3   3      1
## 4   4      1
## 5   5      1
## 6   6      1
## 7   7      1
## 8   8      1
## 9   9      1
## 10 10      1
## 11 11      1
## 12 12      1
## 13 13      2
## 14 14      2
## 15 15      2
## 16 16      2
## 17 17      2
## 18 18      2
## 19 19      2
## 20 20      2
#Cara 1
#Memilih sampel proporsioal setiap strata
library(dplyr)
df %>%
  group_by(status) %>%
  sample_frac(10/nrow(df))
## # A tibble: 10 x 2
## # Groups:   status [2]
##       id status
##    <dbl>  <dbl>
##  1     4      1
##  2     8      1
##  3    12      1
##  4     1      1
##  5     6      1
##  6    10      1
##  7    19      2
##  8    20      2
##  9    16      2
## 10    18      2
#Cara 2
library(splitstackshape)
stratified(df, "status", 10/nrow(df))
##     id status
##  1: 11      1
##  2: 12      1
##  3:  2      1
##  4:  4      1
##  5:  7      1
##  6:  5      1
##  7: 19      2
##  8: 14      2
##  9: 18      2
## 10: 17      2
#Penyelesaian kasus 1
#Stratified sampling dengan alokasi Neyman
library(PracTools)
Nh <- c(250, 700, 440)
Sh <- c(0.11, 0.27, 0.32)

#Penghitungan alokasi sampel setiap strata
strAlloc(n.tot = 3, Nh = Nh, Sh = Sh, alloc = "neyman")
## 
##      
## 
##                       allocation = neyman
##                               Nh = 250, 700, 440
##                               Sh = 0.11, 0.27, 0.32
##                               nh = 0.2308984, 1.5869018, 1.1821998
##                             nh/n = 0.07696613, 0.52896725, 0.39406661
## anticipated SE of estimated mean = 0.1482352
#Penyelesaian kasus 2
#Stratified sampling dengan alokasi Optimum (meminimumkan varians dengan cost tertentu)
#Bila ada cost variabel dan fixed cost maka cost = cost var - fixed cost
Nh <- c(78, 98, 150, 227, 381, 236, 88)
Sh <- c(0.27, 1.15, 0.07, 3.21, 3.01, 0.67, 2.22)
ch <- c(45, 50, 110, 150, 180, 210, 40)

#Penghitungan alokasi sampel setiap strata
strAlloc(Nh = Nh, Sh = Sh, cost = 100000, ch = ch, alloc = "totcost")
## Warning in strAlloc(Nh = Nh, Sh = Sh, cost = 1e+05, ch = ch, alloc = "totcost"): nh is larger than Nh in strata: 7
## 
##      
## 
##                       allocation = totcost
##                               Nh = 78, 98, 150, 227, 381, 236, 88
##                               Sh = 0.27, 1.15, 0.07, 3.21, 3.01, 0.67, 2.22
##                               nh = 10.868501, 55.176795, 3.465856, 205.969454, 295.918949, 37.774151, 106.935821
##                             nh/n = 0.015177150, 0.077050776, 0.004839841, 0.287622837, 0.413231409, 0.052749125, 0.149328862
## anticipated SE of estimated mean = 0.03444114



Demikian sedikit sharing kita kali ini mengenai Stratified Random Sampling. Semoga sedikit ini bisa membantu dan menambah wawasan pembaca setia blog sederhana ini. Jangan lupa untuk terus mengikuti dan menyimak setiap unggahan terbaru dan menarik blog ini. Selamat memahami dan mempraktikkan!

Komentar

Postingan populer dari blog ini

Mencari P - Value dan Titik Kritis Uji F, Uji t, Uji Chi Square, dan Uji Z Normal dengan R

Mencari nilai p-value dan titik kritis Bagi teman-teman yang pernah mengenal statistika, pasti familier dengan istilah p-value dan titik kritis. P-value biasanya didefinisikan sebagai probabiltas atau peluang maksimal yang diamati dari hasil uji statistik, bahasa gampangnya adalah besarnya kesalahan penelitian berdasarkan uji statistik. Sebagai contoh sederhana, dari 100 orang dengan nama masing-masing dan diklasifikasikan ke dalam gender nama perempuan dan nama laki-laki, didapatkan nilai p-value uji statistiknya sebesar 0,05 atau 5%. Itu artinya, dari 100 orang, ada kemungkinan sebanyak 5 orang yang namanya salah klasifikasi. Dari namanya terdeteksi sebagai nama perempuan, padahal aktualnya yang bersangkutan bergender laki-laki. Sedangkan titik kritis atau titik uji adalah nilai batas pengujian hipotesis statistik, apakah masuk dalam wilayah tolak hipotesis, ataukah gagal menolaknya. Titik ini berkaitan erat dengan nilai p-value . Kalau biasanya kita mendapatkan kedua nilai ini da...

Cara Mendowload dan Install R serta RStudio di Windows (Step by Step)

Cara Download dan Install R serta R Studio di Windows Halo teman-teman, mohon maaf karena beberapa waktu ini, blog ini sempat vakum dari unggahan. Kali ini saya akan coba berbagai mengenai bagaimana cara mengunduh ( download ) dan menginstal ( install ) program R sekaligus R Studio khususnya di Windows. Unggahan kali ini sedikit terbalik karena semestinya saya unggah terlebih dahulu pertama kali di blog ini, namun bukan masalah, mengingat kemarin ada beberapa pihak yang meminta untuk menerangkap bagaimana tahapan mengunduh dan instalasi R dan R Studio, jadinya saya dahulukan pada unggahan ini sebelum pembahasan mengenai Data Mining , Data Science , atau bahasan Big Data kita terlampau jauh. Baik, kita akan mulai dengan bagaimana mengunduh R dan R Studio melalui mesin pencari Google. R dan R Studio ini memang beberapa waktu terakhir ini booming , apalagi dengan munculnya konsep mengenai Big Data , Data Modelling, Data Mining, dan Data Science serta Data Visualization . Sebenarnya, men...

Analisis Tipologi Klassen (Klassen Typology) dan Visualisasi Spasialnya dengan R

Tipologi Klassen dan visualisasinya dengan R Halo teman-teman, sebelumnya kita telah membahas tentang analisis Shift Share dan Location Quotient (LQ) dengan menggunakan R. Kali ini, kita akan membahas mengenai satu lagi alat analisis yang sebenarnya merupakan alat analisis tiga serangkai dari SS dan LQ, yaitu analisis Tipologi Klassen. Dalam penelitian ekonomi kewilayahan, ketiga analisis ini seringkali digunakan, baik dalam rangka melihat perkembangan dan transformasi struktur ekonomi suatu wilayah maupun melihat keunggulan kompetitif dan keunggulan komparatif wilayah satu dengan wilayah lainnya dengan mengacu wilayah referensi. Terlebih dulu, sebelum melakukan visualisasi spasial menggunakan fungsi plot(), ada baiknya kita bahas terlebih dahulu mengenai Tipologi Klassen itu sendiri. Tipologi Klassen merupakan teknik pengelompokan sektor, subsektor, lapangan usaha, atau komoditas tertentu di wilayah analisis berdasarkan pertumbuhan nilai tambah wilayah analisis terhadap nasional atau...