3 Desember 2013

Estimasi Standar Error menggunakan Metode Bootstraping

Assalamu`alaikum wr. wb.
Selamat malam pembaca sekalian, bertemu lagi setelah sekian lama kita berpisah,.,.hhahaha :D. Di malam yang berbahagia ini, izinkan saya menyampaikan sedikit informasi(haseeekk,., :D), mudah-mudahan sedikit info ini dapat memberikan manfaat bagi pembaca sekalian terkhusus buat TS sendiri,,hheheee.Baiklah, dengan tidak memperpanjang muqaddimah lagi (hahaha :D), judul pembahasan TS pada malam ini adalah Estimasi Standar Error menggunakan Metode Bootsrapping. Apa itu metode bootstraping?? hmm... sblum membahas terlalu jauh mengenai pemrogramannya, mari kita liat dulu teori singkat Metode Bootstraping.
Bootstrap adalah suatu metode yang dikembangkan pertama kali oleh Brad Efron dengan tujuan menaksir parameter (standard deviasi, Confidence Interval, uji hipotesis, bias) suatu data sampel yang berukuran kecil. Jumlah sampel yang kecil sangat rawan mengakibatkan parameter yang didapat bias, under estimate atau over estimate. Terdapat 2 macam bootstrap yaitu non parametrik dan parametric bootstrap perbedaan terletak pada asumsi, parametric bootstrap memiliki asumsi/informasi mengenai data awal baik berupa distribusinya dan parameternya sedangkan non parametric bootstrap tidak memiliki asumsi tersebut. Jika asumsi distribusi yang di berikan benar maka non parametric bootstrap akan lebih baik dan berlaku sebaliknya bila asumsi salah maka nonparametric bootstrap akan lebih baik. Selanjutnya dalam tulisan ini bootstrap yang digunakan adalah bootstrap nonparametric.


Konsep dari metode ini adalah re-sampling (sampling ulang ) data asli sebanyak N dengan pengembalian yang diulangi sebanyak B kali. Ukuran B adalah terserah pengguna metode karena tidak terdapat ukuran yang pasti. Dari suatu sumber dijelaskan ukuran B=25 sudah cukup bila hanya dalam taraf member informasi, B=50 sudah cukup untuk mengestimasi Standar Deviasi secara kasar, sedangkan untuk mengestimasi Confidence Interval nilai B dianjurkan lebih dari 500 atau B=1000.
okeeeh,.,. setelah mengetahui teori singkatnya, sekarang saat kita mencoba membuat programnya :D. Program ini saya buat menggunakan bahasa pemrograman C++ yang terdapat pada Microsoft Visual Studio 2010. Buka file .cpp nya, lalu ketikan coding dibawah ini :
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <math.h>

void main()
{
    int jml,data[100],total[100],susun[100];
    printf("Masukkan Jumlah Data (Maks. 100) :");
    scanf("%d",&jml);
    printf("Data Acak : ");
    for(int i=0;i<=(jml-1);i++)
    {
        data[i]=rand()%50;
        printf("%d\t",data[i]);
        total[i]=0;
        susun[i]=0;
    }
    printf("\n\n***************Estimasi Rata-rata dengan metode Bootstrap***************\n\n");
    for (int t=1;t<=jml;t++)
    {
        printf("Data ke-%d\t",t);
       
    }
    int x=1;
    int b=0;
    for(x=1;x<=(jml*jml);x+=jml)
    {
            printf("\n");

            for(b=0;b<=(jml-1);b++)
            {           
                susun[b+x] = data[rand()%jml];
                printf("%d\t\t",susun[b+x]);   
            }                   
    }
    x=0;
    b=1;
    /////////////////////////////penjumlahan data acak//////////////////
    printf("\n");
    int ccc=0;
    for(x=1;x<=jml;x++)
    {
            for(b=0;b<=((jml*jml)-jml);b+=jml)
            {           
                ccc=ccc+susun[b+x];
            }
        total[x] = ccc;
        ccc=0;
    }
    printf("============================================================================+\n");
    for (int tt=1;tt<=jml;tt++)
    {
        printf("%d\t\t",total[tt]);
    }
    printf("\n");
    float total_semua=0;
        for (int ttt=1;ttt<=jml;ttt++)
    {
        float rata2=float(total[ttt])/jml;
        printf("%.2f\t\t",rata2);
        total_semua=total_semua+rata2;
    }
    printf("\n\nJadi rata-rata Bootstrap adalah %.2f / %d = %.2f \n\n\t\t\t***Terima Kasih...***\n",total_semua,jml,(total_semua/jml));

    getch();
}
tekan Play atau F5 untuk menjalankan program ini, dan lihat hasilnya,.,.,... :D
Berikut ini hasil tampilan program ini ketika saya jalankan :
Tampilan Awal

Tampilan setelah dimasukan jumlah data
Demikian tutorial singkat ini, semoga bermanfaat...Amiiin :D

0 Tanggapan:

Posting Komentar