1
DASAR-DASAR PENGOLAHAN DATA MENGGUNAKAN STATA Usman Ssi. Msi. Lembaga Penyelidikan Ekonomi dan Masyarakat Fakultas Ekonomi Universitas Indonesia Jl. Salemba Raya No. 4, Jakarta 10430, Telp: 021-3143177
TOPIK PEMBELAJARAN 1. 2.
Mengapa Menggunakan STATA Basic: Mengenal STATA
3.
Manajemen Data
4. 5. 6.
7.
Window layout Managing directory Inputting data Menyimpan data, command, dan output Describing data Generating and replacing variables Modifying data (convert data, if command) Reshaping and collapsing data Combining two or more stata files
Ringkasan Statistik dan Tabel Analisis Regresi Logistic Analisis Regresi Berganda Grafik
MANFAAT PEMBELAJARAN 3
Setelah materi ini diberikan, diharapkan para peserta dapat melakukan pengolahan data menggunakan Software STATA. Dengan STATA peserta dapat: 1. Mengatur/Kalkulasi data 2. Membuat tabulasi data 3. Menerapkan metode standar perhitungan statistika 4. Membuat analisis model ekonometrika seperti regresi
Mengapa Menggunakan STATA 4
Excel: Observasi dan kolom terbatas. SPSS: Untuk analisis statistik cukup bagus namun kurang fleksibel untuk analisa simulasi. Eviews: Untuk data makro terutama time series sangat bagus namun kurang bagus untuk data survey. SAS: Useful untuk data makro maupun mikro dengan daya tampung data sangat besar. Namun harga software sangat mahal. STATA: Useful untuk data makro maupun mikro dengan daya tampung data yang besar (tapi masih di bawah SAS) & harga software relatif terjangkau.
Basic: Mengenal STATA 5
Versi terakhir STATA adalah Versi 15. Tampilan Stata terdiri dari 5 jendela yang sekaligus ditampilkan dalam satu layar, yaitu: Stata Command, Variables, Properties, Review, dan Stata Result. 1. Command: jendela yang berfungsi untuk menuliskan perintah-perintah program dan untuk menjalankan program makro stata yang sudah ada. 2. Variables: tempat menampilkan seluruh nama variabel dari file yang sedang aktif dibuka. 3. Properties: keterangan rinci mengenai variabel seperti: tipe data, format, value label dll. 4. Review: tempat tampilan seluruh syntax program yang pernah dituliskan pada jendela Stata Command. 5. Stata Result: jendela tampilan baik berupa syntax program, hasil proses, dan pesan kesalahan.
Basic: Window Layout 6
Basic: Set Working Directory 7
Di sebelah kiri bawah tampilan window Stata, akan dituliskan working directory Stata. Working directory adalah folder di mana Stata “bekerja”, yaitu tempat di mana Stata akan menyimpan atau mengakses file secara default. Ada baiknya working directory di set ke directory di mana dataset dan file lain terkait pekerjaan tersebut disimpan. Contoh perintah set Working Direktori yang kita inginkan: .cd “D:\Latihan Stata”
Basic: Set Working Directory 8
File yang ada dalam folder working directory dapat diakses langsung menggunakan file_name (contohnya use dataset.dta), sedangkan yang berada di luar working directory hanya dapat diakses menggunakan file path lengkap (contohnya: use “D:\Data\Dataset.dta”). Dengan kata lain, memindahkan file-file yang digunakan ke dalam working directory akan membantu untuk mengakses file-file tersebut nantinya. Penggunaan nama file yang mengandung karakter spasi, ketika akan di open dalam Stata maka perlu menggunakan tanda petik ”…..” .
Basic: Inputting Data 9
Data yang akan olah atau dianalisis menggunakan Stata dapat berasal dari tiga sumber: 1. 2. 3.
File Excel. File data yang berformat ASCII. File database Stata yang telah disimpan sebelumnya, yang memiliki extension “.dta”
Inputting Data: File Excel 10
Cara memasukkan data dari file Excel dapat dilakukan dengan dua cara: 1. Copy – Paste Tahapan: Copy data dari excel Kembali ke Stata, ketikkan “edit” di window Command untuk membuka data editor Paste (Ctrl+V) di data editor Akan muncul text info ”Do you want to treat the first row as variable names or data?”. Pilih ”Variable Names”. Jika akan disimpan, tulis di command: save filename Latihan: Gunakan file “data_gk2013.xls”. Pindahkan ke dalam STATA
Inputing Data: File Excel 11
2. Import Tahapan: -
Pada menu File, pilih Import
-
Pilih “Excel Spreadsheet (*.xls, *.xlsx)
-
Klik Browse untuk menunjuk ke file yang akan di impor
-
Beri checklist “V” pada pilihan “Import first row as variable names”
Inputting Data: File ASCII 12
Metode Impor data ASCII ada 4 cara: 1.
Text data (delimited, *.csv):
2.
Text data in Fixed Format
3.
Text data in Fixed Format with dictionary
4.
Unformated text data
Latihan: Sebagai latihan lakukan impor data menggunakan file: -
data_gk2013.csv
-
data_gk08_unfix.raw
Inputting Data: Stata data set 13
Jika data yang akan dianalisis sudah dalam format stata, maka cukup dibaca file tersebut dengan perintah: Dari menu File: Open… Dari window Command: .use filename Adakalanya data yang dibaca sangat besar. Pada STATA versi 11 atau sebelumnya perlu melakukan set terhadap memory. Misalnya ingin men-set 500mb maka perintahnya: . Set memory 500m Pada STATA versi12 ke atas tidak diperlukan lagi untuk melakukan set memory, karena pada versi baru ini sudah secara otomatis melakukan memory adjusments.
Basic: Menyimpan data, command, dan output 14
Menyimpan Data: Dataset Hasil data yang sudah diolah dengan Stata dapat disimpan dengan perintah save filename. Bila nama file dataset yang hendak disimpan sudah ada, kita perlu menambahkan opsi replace. Contoh: save filename, replace Agar data bisa dibaca STATA versi lebih rendah maka perintah save diganti menjadi saveold Menyimpan Command: History dari command yang dijalankan dalam satu sesi Stata secara otomatis tersimpan dalam panel Review. Kita dapat menyeleksi perintah yang kita inginkan dari panel Review dan meng-copy paste serta mengeditnya dalam Do-file Editor di Stata. Do-file Editor dapat dibuat dengan cara mengklik New Do-file Editor pada menu bar. Seperti gambar di bawah ini:
Basic: Menyimpan data, command, dan output 15
Menyimpan Output:
Output di jendela Result dapat di copy-paste ke program lain seperti Word atau Excel, dalam bentuk teks atau tabel.
Output di jendela Result juga dapat disimpan dalan format .smcl dan .log dengan cara mengaktifkan perintah log-file. Keduanya mempunyai kelebihan dan kekurangan.
Format smcl dapat dibuka di STATA, namun jika dibuka di Excel tampilannya berubah. Sedangkan format log tidak dapat dibuka di STATA, namun jika dibuka di Excel tampilan tidak berubah sehingga tabel-tabel output dapat diedit dan dirapihkan.
Syntax log-file secara detail dapat ditulis sbb:
Log using file_name: Membuka penyimpanan log -file dengan nama file_name.
Log off : Menghentikan penyimpanan log secara sementara
Log on : Melanjutkan kembali penyimpanan log yang sudah di off sebelumnya
Log close: Menyelesaikan penyimpanan.
Basic: Describing Data 16
Berikut perintah-perintah untuk menggambarkan data yang akan diolah, - count : menampilkan jumlah obervasi - describe : menampilkan semua nama variabel - codebook varname : ringkasan data lebih lengkap - list varname in n1/n2: menampilkan data di window result dari observasi ke-n1 sampai n2 - browse : menampilkan data di window data
Ringkasan Statistik dan Tabel 17
summarize atau summ: Menampilkan ringkasan statistik untuk variable-variabel numerik tabulate atau tab: Menampilkan frekuensi dan persentase frekuensi dari variable-variable kategorik tab1: multiple one way-tables tab2: multiple two way-tables tabstat: menampilkan statistik variable-variabel numerik table: menampilkan statistik dari satu atau lebih variable dengan menggabung kekuatan tabulate dan summarize.
Ringkasan Statistik dan Tabel 18
LATIHAN MENAMPILKAN KARAKTERISTIK DATA SUSENAS 2013
Data Management: Generating, replacing, rename, order, labeling 19
(Gunakan file garis kemiskinan 2013) Membuat variabel dapat menggunakan perintah generate atau cukup ditulis gen.
Mengganti variable value dengan perintah replace
Contoh: gen jawanon=“Luar Jawa”
Contoh: replace jawanon =“Jawa” if 31<=kodeprov & kodeprov<=36
Membuat variable kategorik yang lebih singkat: gen jawanon=cond(31<=kodeprov & kodeprov<=36,”Jawa”,”Luar Jawa”)
Merubah nama variabel dapat menggunakan perintah rename atau cukup ditulis ren.
Contoh: ren kodeprov provi; ren prov provinsi; ren urbrur deskot
Mengatur urutan variabel dengan perintah order
Contoh: order jawanon, first; order jawanon, before (urbrur)
Data Management: Generating, replacing, rename, order, labeling 20
Memberi label pada variabel
. label var provi “Kode provinsi” . label var provinsi “Nama provinsi” . label var deskot “Kategori kota dan desa” . label var gk2013 “Nilai garis kemiskinan thn 2013”
Memberi label value
Contoh:
Step 1: label define deskotval 1 “Kota” 2 “Desa” Step 2: label value deskot deskotval
Membuang variabel dengan perintah drop
Contoh: . drop varname
Data Management: Modifying data 21
Membuat variabel data Numeric dari var data String: encode Contoh: . encode jawanon, gen(jwnonnum)
Membuat var data String dari var data Numeric yang sudah diberi label: decode
Contoh: . decode deskot, gen(urbrur_str)
Mengubah variabel Tipe Numeric (byte,float) menjadi variabel Tipe String : . tostring atau string Contoh: . tostring provi, gen(kodestr); atau . gen kodestr=string(provi)
Mengubah variabel data Tipe String menjadi variabel Tipe Numeric (byte, float) : destring
Contoh: . destring kodestr, gen(kodenum)
Data Management: Transposing, Reshaping and collapsing 22
Penggunaan perintah reshape. Untuk merubah struktur data yang cukup kompleks dapat dilakukan dengan perintah reshape. Perintah ini memiliki 2 bentuk konfigurasi yaitu “wide” dan “long”. Jika kita memiliki struktur data “wide” maka bisa dirubah ke bentuk “long”.
Data Management: Transposing, Reshaping and collapsing 23
Bentuk umum perintah reshape: Reshape wide/long stubname, i(i_var) j(j_var) string
wide|long — Bentuk yang dituju setelah melakukan perintah, apakah wide atau long.
Stubnames — Nama variabel (untuk reshape long) atau bagian umum dari nama variabel (reshape wide). Stubname harus punya pola namanama variabel yang sama contoh: grow8, grow9,…grow12. Tidak bisa nama variabel yang berbeda misalnya: cons, investasi, exp. Kecuali diubah lebih dulu menjadi: exp1, exp2, exp3.
i(i_var) — Variabel-variabel yang berada dalam bentuk long, yang mengidentifikasikan observasi secara unik.
j(j_var) — Variabel lama yang akan di-expand (reshape wide), atau variabel baru yang akan diciptakan sebagai identifier (reshape long).
string — Tambahkan opsi string bila j_var berisi huruf. Misalnya variabelvariabel yang isinya alasan terhadap suatu pilihan: alasan1, alasan2, alasan3, dst.
Data Management: Transposing, Reshaping and collapsing 24
Contoh: Impor file grow0812_prov.xls menjadi data stata Save dengan nama grow0812_prov.dta Ketikkan perintah:
. reshape long grow, i(province) j(year) . save grow0812_long
Untuk mengubah kembali ke bentuk “wide”, ketikkan perintah: . reshape wide grow, i(province) j(year) . save grow0812_wide
Data Management: Transposing, Reshaping and collapsing 25
Penggunaan perintah collapse. Perintah lain yang juga penting adalah collapse, yaitu perintah untuk mengagregasi data dalam bentuk ringakasan statistik seperti: mean median sum Sd Count Max Min
Data Management: Transposing, Reshaping and collapsing 26
Contoh, lakukan perhitungan rata-rata growth pertahun berdasarkan provinsi: Buka
file grow_long.dta: . use grow0812_long Ketikkan perintah: . collapse (mean) grow, by(province) atau dapat juga sekaligus beberapa ringkasan statistik dengan memberi nama variabel baru . collapse (mean) mean_grow=grow (min) min_grow=grow (max) max_grow=grow, by(province)
Data Management: Combining two or more stata files 27
Hal penting dalam keterampilan mengolah data adalah melakukan merging data. “merge” adalah perintah untuk menggabung beberapa file (2 atau lebih) menjadi satu file gabungan. Tujuannya: Menyatukan
variabel-variabel penelitian menjadi satu data set yang terstruktur. Menggabung berbagai file menjadi satu data set untuk kebutuhan pengolahan lanjutan.
Data Management: Combining two or more stata files 28
Sebagai latihan, hitunglah jumlah orang miskin berdasarkan provinsi. Gunakan file ssn13_smpl.dta dan data_gk13.dta Langkah-langkah merging file: 1.
Pastikan anda bekerja pada folder kerja
2.
Buka file ke-2 (file using), urutkan berdasarkan “id_key” responden, kemudian simpan ulang
3.
use ssn13_smpl sort id_key
Gabungkan file master (yang sedang aktif) dengan data using, kemudian urutkan berdasarkan “id_key”
5.
use data_gk13 sort id_key save gk13, replace
Buka file ke-1 (file master), urutkan berdasarkan “id_key” responden
4.
cd “D:\pelatihan STATA”
merge id_key using gk13
Simpan data set gabungan dengan nama file berbeda
save ssn_misk13
Data Management: Combining two or more stata files 29
Langkah-langkah merging file: 6.
Buat variabel baru untuk identifikasi penduduk miskin dan menghitung jumlah orang miskin
7.
gen misk=1 replace misk=0 if exp_cap>gk13 gen weind=b2r1*fwt /*weight penduduk*/ gen jmlmisk=misk*weind
Buat agregasi data jumlah peduduk miskin dan jumlah total penduduk berdasarkan provinsi dan desa/kota
collapse (sum) jmlmisk jmlpddk=weind, by(provdeskot) list
Contoh do-file latihan merging data
30
Data Management: Combining two or more stata files 31
Selain melakukan merging (menambah variabel), Stata juga bisa melakukan penambahan data dengan perintah append (menambah observasi). Contoh: Gabungkanlah
data grow0107_long.dta dengan data grow0812_long.dta Langkah-langkah append: Buka
file ke-1 : . Use grow0107_long Gabung dengan file ke-2 : . Append using grow0812_long
Contoh do-file latihan penggunaan perintah append 32
33
ANALISIS REGRESI LOGISTIK
34
Contoh Pengolahan Data untuk Analisis Regresi Logistik
Setelah mempelajari dan memahami manajemen data, maka hal ini akan sangat membantu kita untuk melakukan analisis data lebih lanjut misalnya analisis regresi dari data rumah tangga hasil survey BPS yaitu SUSENAS.
Sebagai latihan lakukan analisis regresi Logit untuk mengetahui faktor faktor yang mempengaruhi kemiskinan. Secara teori kemiskinan dipengaruhi oleh faktor kemampuan sumberdaya manusianya, aset-aset yang dimiliki, dan akses terhadap fasilitas ekonomi. Gunakan data sampel yang diambil dari susenas kor individu dan rumah tangga tahun 2013 untuk mengambil variabel faktor sumberdaya manusia dan faktor aset-aset yang dimiliki. Variabel akses ekonomi terdapat di data Podes, dimana untuk latihan ini tidak disediakan.
35
Contoh Pengolahan Data untuk Analisis Regresi Logistik
Faktor sumberdaya manusia: Pendidikan
(b5r17): lama bersekolah Jumlah anggota rumah tangga yang bekerja (b5r24a1) Lapangan usaha kepala RT (b5r30): pertanian vs non pert Jenis pekerjaan Kepala RT (b5r31): formal vs informal
Faktor aset-aset yang dimiliki: Kepemilikan
rumah (b6r3): milik sendiri vs bukan Kepemilikan lahan (b6r4): milik sendiri vs bukan Luas lantai (b6r8) Pemasangan istrik (b6r14a): PLN vs no PLN Jumlah anggota rumah tangga (b2r1)
36
37
ANALISIS REGRESI LOGIT 38
ANALISIS REGRESI LOGIT 39
Hasil Output Odds Ratio Regresi Logit Kemiskinan
40
ANALISIS REGRESI BERGANDA
REGRESI LINIER BERGANDA PENGERTIAN Regresi linear berganda merupakan pengembangan analisis linier sederhana. Perbedaan utamanya adalah mengenai banyaknya variabel bebas. Analisis regresi linier sederhana hanya ada satu variabel bebas, sedangkan analisis regresi linier berganda jumlah variabel bebasnya lebih dari satu.
MODEL REGRESI BERGANDA Secara umum model regresi linier berganda dinyatakan sebagai berikut: Yi = b0 + b1 X1i + b2 X2i + … + bk Xki + i dimana: Yi = variabel terikat ke-i X1i X2i, …. Xki= variabel bebas X1, X2, …, Xk observasi ke-i b0 = konstanta b1 b2, …, bk = koefisien regresi i = error pendugaan ke-i Metode estimasi menggunakan metode kuadrt terkecil berusaha meminimumkan error i.
EVALUASI MODEL Ada tiga kriteria untuk evaluasi Model: 1. Kriteria Ekonomi 2. Kriteria Statistik 3. Kriteria Ekometrik
1. Kriteria Ekonomi Dilihat dari beberapa indikator: Arah (tanda koefisien) - Apakah sudah sesuai teori? Jika Jika
Ya, maka model sudah sesuai teori.
tidak, ada kemungkinan data, variable, dan spesifikasi model yang digunakan dalam regresi tidak tepat.
2. Kriteria Statistik A.
Uji signifikasi serentak (F-test) H0: Independent Var secara bersama-sama tdk mempengaruhi dependent var H1: Independent Var secara bersama-sama mempengaruhi dependent var Jika (Prob>F) lebih kecil dari 0.05 (alpha=5%), maka tolak H0.
B.
Uji signifikansi parsial (t-test) H0: var Xi tidak berpengaruh terhadap dependent variable H1: var Xi berpengaruh terhadap dependent varible Jika (Prob>|t|) lebih kecil dari 0.05 (alpha=5%), maka tolak H0.
C.
Uji Goodness of fit Dilihat dari R-square. Jika mendekati 1 maka artinya variable independen dapat menjelaskan (mendekati 100%) variable dependen.
3. Kriteria Ekonometrika A.
B.
C.
Tidak ada Multikolinieritas
Lihat koefisien korelasi: corr y x2 x3
Tes koefisien korelasi: vif (jika VIF > 10, maka ada multikol)
Tidak ada Heteroskedastik
H0: Homoskedastik
H1: Heteroskedastik
Jika prob>chi2 lebih kecil dari 0.05 (alpha=5%) maka tolak H0
Command stata: hettest
Tidak ada autokorelasi
H0: tidak ada autokorelasi
H1: ada autokorelasi
Jika prob>chi2 lebih kecil dari 0.05 (alpha=5%) maka tolak H0
Command stata: ivactest (ivactest harus diinstal terlebih dahulu. Search pada menu help)
CONTOH MODEL REGRESI Model Penerimaan Pajak Penghasilan (Income Tax)
Tujuan: Mencari faktor-faktor yang berpengaruh terhadap inccomes sehingga diperoleh model terbaik untuk proyeksi.
Tahapan perancangan model: 1. Identifikasi Model Dasar: INCOMETAX = f(POP, EMPL, GDP, DCRISIS98) 2. Uji statistik model dan uji asumsi klasik 3. Reidentifikasi model 4. Mendapatkan model regresi terbaik
47
48
GRAFIK 49
Stata menyediakan fasilitas grafik yang dapat dibuat melalui perintah di jendela cammand line maupun melalui dialog box. Bentuk-bentuk grafik dalam stata: Histogram Boxplot Pie Chart Twowat graph: Scatterplots Kernel Density plot
GRAFIK: HISTOGRAM 50
Histogram biasa digunakan untuk melihat sebaran data suatu variabel. Syntax umum:
histogram varname if in [weight], [continuous_opts|discrete_opts] options
Contoh (gunakan file “ssn13rt.dta”): Histogram
exp_cap Histogram exp_cap, by (deskot) hist exp_cap if exp_cap<=4000000 [weight=bobot], freq histogram b6r11_a , freq discrete xlabel(1 (1) 15)
GRAFIK: HISTOGRAM 51
1.5e-06
1
2
0
5.0e-07
Density
1.0e-06
2.0e-07 4.0e-07 6.0e-07 8.0e-07 1.0e-06
0
0
2000000 4000000 pengeluaran total per kapita sebulan
2000000
4000000
6000000
80000000
2000000
4000000
6000000
8000000
pengeluaran total per kapita sebulan
6000000 Graphs by deskot
20
30
Frequency
40
3000
50
4000
0
2000
10 0
0
Density
52
1000
Frequency
GRAFIK: HISTOGRAM
0
1000000 2000000 pengeluaran total per kapita sebulan
3000000
1
2
3
4
5
6 7 8 9 10 11 sumber air untuk memasak:
12
13
14
15
GRAFIK: BOXPLOT 53
Boxplot digunakan untuk bentuk distribusi data (yang bersifat kuantitatif/bukan kualitatif) dan mengidentifikasi apakah ada data yang outlier. Sintax umum: graph box yvars if in [weight], options graph hbox yvars if in [weight], options
Contoh (gunakan file “ssn13_smpl.dta”): Graph food_cap nonfood_ graph box food_cap nonfood_ if nonfood_<=3000000
GRAFIK: BOXPLOT 54
0
500000
1.0e+06
1.5e+06
2.0e+06
• graph box food_cap nonfood_ if nonfood_<=3000000
pengeluaran makanan per kapita sebulan pengeluaran non makanan per kapita sebul
GRAFIK: PIE 55
PIE graph digunakan untuk melihat komposisi data suatu variabel. Syntax:
graph pie [if] [in] [weight], over(varname) [options]
Contoh: Keluarkan
komposisi responden berdasarkan Status penguasaan bangunan tempat tinggal dan berdasarkan ketegori desa/kota. graph pie [weight=bobot], over( b6r3) by(deskot)
Grafik PIE 56
graph pie [weight=bobot], over( b6r3) by(deskot) 1
2
1 3 5 Graphs by deskot
2 4 6
Grafik Dua Variabel 57
1000000
1500000
2000000
twoway (scatter food_cap nonfood_)
0
500000
0
1000000 2000000 3000000 4000000 pengeluaran non makanan per kapita sebul
5000000
Scatter and Line 58
1000000150000020000002500000
twoway (scatter food_cap nonfood_) (lfitci food_cap nonfood_)
0
500000
0
1000000 2000000 3000000 4000000 pengeluaran non makanan per kapita sebul pengeluaran makanan per kapita sebulan Fitted values
5000000 95% CI
Grafik, Regresi dan Confidence Interval 59
3000000
. twoway (scatter food_cap nonfood_) (lfitci food_cap nonfood_), by (deskot) 2
2000000
1
0
1000000
0
50000000
5000000
pengeluaran non makanan per kapita sebul pengeluaran makanan per kapita sebulan Fitted values Graphs by deskot
95% CI
Dua Grafik 60
twoway (scatter read write), by(female)
Kernel density plot 61
1.500e-06
kdensity exp_cap Kernel density estimate
0
1.000e-06 5.000e-07 Density
0
2000000 4000000 6000000 pengeluaran total per kapita sebulan
kernel = epanechnikov, bandwidth = 9.8e+04
8000000
62
TERIMA KASIH