Anda di halaman 1dari 31

Pelatihan Komputasi dengan Stata

Benedict J. Yappy1
Departemen Ilmu Ekonomi
Universitas Indonesia
1
yappy.benedict@gmail.com – penyusun.‡

1 Pendahuluan
Dokumen ini adalah bahan yang digunakan dalam pelatihan penggunaan Stata
untuk melakukan analisis ekonometrika sederhana. Modul ini mencakup deskripsi
ringkas fungsi yang akan digunakan dalam software, perintah yang digunakan,
serta contoh hasil yang diperoleh (bilamana perlu). Dalam paragraf uraian, perin-
tah/command Stata dapat dikenali dengan format ini, dengan ringkasan perintah
baru ditulis di sebelah kanan dan bagian perintah yang diubah sesuai penggu-
naan dicetak miring. Contoh output Stata dapat dikenali seperti startscreen Stata
berikut:

Bagi pengguna, perintah help berguna untuk melihat bagaimana suatu com-
mand digunakan, dan opsi perintah apa saja yang tersedia, terutama bila fungsi
yang ingin digunakan sudah diketahui. Caranya adalah mengetik help command help
(yep, it includes help help!). Informasi lebih lengkap terkait perintah yang
diperkenalkan dalam modul dapat diakses dengan perintah ini.
Modul ini mencakup seluruh silabus pelatihan yang hendak disampaikan. De-
ngan kata lain, pembaca dapat menguasai materi yang disampaikan dalam pelati-
han dengan membaca dan mereplikasi langkah yang ada dalam modul ini. Pembaca
dipersilahkan mengakses materi di http://benconomy.wordpress.com/tutoring,
tanpa mengubah isinya.

Powered by LATEX 2ε with XƎLATEX using TEXstudio and Stata.

1
Daftar Isi

Daftar Isi
1 Pendahuluan 1

2 Manajemen Data 4
2.1 Penggunaan Stata . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
2.1.1 Bekerja dengan Stata . . . . . . . . . . . . . . . . . . . . . . 4
2.1.2 Working Directory . . . . . . . . . . . . . . . . . . . . . . . 4
2.1.3 Sumber Data . . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.1.4 Menyimpan Dataset, Perintah dan Output Stata . . . . . . 5
2.2 Bekerja dengan Data . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2.1 Manajemen variabel . . . . . . . . . . . . . . . . . . . . . . 7
2.2.2 Perintah generate . . . . . . . . . . . . . . . . . . . . . . . 7
2.2.3 Perintah drop . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.2.4 Struktur Data . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2.2.5 Bekerja dengan timevar . . . . . . . . . . . . . . . . . . . . 8
2.2.6 Peubah untuk varlist . . . . . . . . . . . . . . . . . . . . 9
2.2.7 Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
2.2.8 Perintah encode dan recode . . . . . . . . . . . . . . . . . 11
2.2.9 Perintah reshape . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2.10 Operator if, in dan by . . . . . . . . . . . . . . . . . . . . 14
2.2.11 Perintah count dan list . . . . . . . . . . . . . . . . . . . 14

3 Analisis Deskriptif 15
3.1 Statistik deskriptif . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
3.2 Grafik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

4 Analisis Regresi OLS 20


4.1 Review . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.1.1 Metode OLS . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.1.2 Asumsi OLS . . . . . . . . . . . . . . . . . . . . . . . . . . 22
4.1.3 Pengujian Hipotesis . . . . . . . . . . . . . . . . . . . . . . 23
4.2 Regresi OLS dengan Stata . . . . . . . . . . . . . . . . . . . . . . . 24
4.3 Penanganan Pelanggaran Asumsi . . . . . . . . . . . . . . . . . . . 25
4.3.1 Heteroskedasitas . . . . . . . . . . . . . . . . . . . . . . . . 25
4.3.2 Autokorelasi . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4.3.3 Multikolinearitas . . . . . . . . . . . . . . . . . . . . . . . . 27
4.4 Instrumental Variables . . . . . . . . . . . . . . . . . . . . . . . . . 28
4.5 Specification Test . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4.6 Setelah estimasi… . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.6.1 Perintah predict . . . . . . . . . . . . . . . . . . . . . . . . 30

benconomy.wordpress.com 2
Daftar Isi

4.6.2 Perintah estimates . . . . . . . . . . . . . . . . . . . . . . 30

benconomy.wordpress.com 3
2 Manajemen Data

2 Manajemen Data
2.1 Penggunaan Stata
2.1.1 Bekerja dengan Stata
Stata adalah sebuah program statistik yang dapat dikatakan sangat lengkap dari
segi kemampuan fungsi statistik yang dapat ditanganinya, yang menjadikan Stata
salah satu program paling populer yang digunakan oleh peneliti-peneliti dari berba-
gai kalangan. Secara garis besar, cara bekerja dalam Stata adalah melalui command
line, di mana perintah diketikkan ke dalam panel command (dapat diaktifkan de-
ngan shortcut Ctrl+1). Walau demikian, Stata memiliki cukup banyak dialog box
untuk banyak perintahnya, yang menambah fleksibilitas program Stata.
Bila berada dalam panel command, kita dapat scroll command-command se-
belumnya dengan Page-up/down, untuk memudahkan mengulangi perintah yang
pernah dipanggil. Opsi untuk masing-masing perintah biasanya ditambahkan sete-
lah tanda koma , (hanya ada satu tanda koma diperbolehkan untuk setiap perin- ,
tah).
Selain panel Command, terdapat juga beberapa panel lain:

1. Results (Ctrl+2) yang melaporkan hasil dari perintah yang dijalankan.

2. Review (Ctrl+3) yang mendaftarkan perintah-perintah yang telah dijalankan


sebelumnya.

3. Variables (Ctrl+4) yang mendaftarkan variabel-variabel yang sedang ada da-


lam dataset/memory.

4. Properties (Ctrl+5) yang memberi keterangan tentang variabel yang dipilih.

2.1.2 Working Directory


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 peker-
jaan tersebut disimpan. Seperti di banyak program lain, untuk mengubah working
directory, ketikkan cd new_path ke dalam panel command. File yang ada dalam cd
working directory dapat langsung diakses menggunakan file_name (contohnya
dataset.dta), sedangkan yang berada di luar working directory hanya dapat diak-
ses menggunakan file path lengkap (contohnya ”D:\Data\Dataset.dta”). Dengan
kata lain, memindahkan file-file yang digunakan dalam Stata ke dalam working
directory akan membantu untuk mengakses file-file tersebut nanntinya.

benconomy.wordpress.com 4
2 Manajemen Data

Penggunaan nama file dalam Stata perlu menggunakan tanda petik ”. . .” untuk
nama file yang mengandung karakter spasi.

2.1.3 Sumber Data


Data yang akan dianalisis menggunakan Stata dapat berasal dari tiga sumber:

1. File database Stata yang telah disimpan sebelumnya, yang memiliki exten-
sion .dta. Cara membuka dapat dengan menggunakan command line use use
file_name.dta dialog box (File > Open ; Ctrl+O).

2. Copy-paste dari program database lain, seperti Microsoft Excel. Pertama,


copy data dari program lain tersebut. Kembali di Stata, ketik edit di edit
panel Command untuk membuka data editor.. Data dapat langsung di-paste
(Ctrl+V) ke Stata. Untuk menampilkan dataset tanpa melakukan edit (dan
mencegah edit yang tidak disengaja), gunakan perintah browse. browse
Bila data yang di-copy termasuk nama varibel di baris pertama, pilih “Treat
first row as variable names”. Bila hanya data yang di-copy, pilih “Treat first
row as data” — Stata akan memberi nama untuk masing-masing variabel
(var1, var2, dst). Data yang di-copy dapat berupa data dengan banyak va-
riabel sekaligus (multi-column) maupun satu per satu — variabel baru dapat
ditambahkan melalui copy-paste.

3. Membuka file database yang dibuat di program lain. Cara paling mudah
melakukan impor database adalah dengan menggunakan opsi di dalam File >
Import.

Selain menggunakan database yang telah ada seperti dalam ketiga sumber di
atas, Stata juga menyediakan file-file contoh database .dta yang siap digunakan
dalam setiap instalasi Stata. Untuk melihat daftar file tersebut, ketik sysuse dir sysuse
dalam panel command, dimana file yang ingin dibuka dapat digunakan dengan pe-
rintah sysuse file_name.
Stata juga dapat membuka file .dta di internet secara langsung dengan menggu-
nakan perintah webuse URL. webuse

2.1.4 Menyimpan Dataset, Perintah dan Output Stata


Dataset Hasil data yang sudah diolah dengan Stata dapat disimpan dengan
perintah save file_name. Bila nama file dataset yang hendak disimpan sudah save
ada, kita perlu menambahkan opsi replace ke dalam perintah (save file_name,
replace). Fungsi Save dan Save As seperti di program lain dapat diakses dengan
shortcut Ctrl+S dan Ctrl+Shift+S.

benconomy.wordpress.com 5
2 Manajemen Data

Perintah dan do-file “History” perintah-perintah yang dijalankan dalam satu


sesi Stata akan dimasukkan dalam panel Review. Kita dapat menyeleksi perintah
yang kita inginkan dari panel Review dan mengeditnya dalam do-file editor di
Stata.
Do-file adalah file text standar dengan extension .do (dapat dibuka/diedit dalam
text editor seperti Notepad). File .do ini menjadi daftar perintah yang dapat di-
jalankan atau diedit oleh Stata. Untuk menjalankan do-file yang sudah disimpan,
gunakan perintah do file_name untuk menjalankan do-file seperti biasa, dan pe- do | run
rintah run file_name untuk menjalankan tanpa laporan dalam panel Results.
Untuk mengedit do-file yang telah disimpan sebelumnya, gunakan perintah doedit doedit
file_name.
Menyimpan daftar perintah yang dijalankan oleh Stata sangat penting untuk
memastikan bahwa perintah yang diberikan tercatat, sehinnga dapat dipertang-
gungjawabkan dan direplikasi. Penyimpanan daftar perintah tersebut dengan mu-
dah dilakukan dengan do-file Stata. Selain itu, eksekusi do maupun run akan
berhenti bila terdapat kesalahan dalam data/command, sehingga sangat berguna
untuk melakukan hal-hal yang sifatnya berulang.

Output (Results) dalam panel Results dapat disimpan dengan memulai log-file
.smcl. Detail perintah untuk manajemen log-file sebagai berikut: log

• log using file_name: Menyimpan log ke dalam file dengan menggunakan


file_name.smcl. Log ini dapat dibuka oleh Stata.

• log off: Menghentikan penyimpanan log secara sementara.

• log on: Melanjutkan kembali penyimpanan log yang sudah di off sebelum-


nya.

• log close: Menyelesaikan penyimpanan log.

Selain dengan menyimpan log, output stata dapat dicopy-paste ke program lain.
Untuk meng-copy, highlight area output yang akan di-copy, dan klik kanan. Copy
biasa (Ctrl+C) akan menghasilkan teks, copy as table akan menghasilkan tabel
dengan karakter tabulator (untuk program spreadsheet seperti Excel), dan copy
picture menghasilkan gambar dan mempertahankan tampilan dalam Stata.

2.2 Bekerja dengan Data


Sebagai program statistik, Stata memiliki kemampuan operasi variabel yang cukup
luas dan menyeluruh. Pada bagian ini diuraikan bagaimana cara bekerja dengan
variabel yang paling umum dipakai. Opsi yang tersedia di Stata lebih luas dari

benconomy.wordpress.com 6
2 Manajemen Data

uraian dalam modul ini, sehingga dianjurkan untuk melihat help untuk masing-
masing perintah.

2.2.1 Manajemen variabel


Jenis Variabel Pada dasarnya terdapat dua jenis variabel di Stata, yaitu string
(dapat bernilai huruf) dan variabel numerik. Data string tidak dapat digunakan
dalam perintah perhitungan/statistik dalam Stata. Terdapat beberapa jenis varia-
bel numerik.* Untuk mengubah format penyimpanan variabel, gunakan perintah
recast type varlist dimana type adalah tipe variabel. Variabel string tidak da- recast
pat diubah menjadi angka. Untuk melihat daftar dan jenis variabel dalam dataset
yang dibuka, gunakan perintah describe. describe

Order Urutan variabel yang ada dalam Stata dapat diubah dengan menggunakan
perintah order varlist, di mana variabel varlist tersebut akan dipindahkan men- order
jadi variabel pertama. Tambahkan opsi last untuk memindahkan ke variabel ter-
akhir; before(varname) dan after(varname) untuk memindahkan sebelum atau
setelah varname.

2.2.2 Perintah generate


Seperti namanya, perintah generate varname=expression berguna untuk men- generate
ciptakan variabel baru. Expression yang dimaksud dapat berupa operasi hitung, va-
riabel lain ataupun pembuatan angka random oleh Stata. Operasi yang didukung
dapat dilihat dalam menu help functions. Beberapa ekspresi yang umum digu-
nakan yaitu +, -, /, *, exp() dan log(). Bila variabel yang diciptakan digunakan
untuk menggantikan (overwrite) variabel yang sudah ada, maka perintah replace replace
dapat digunakan untuk menggantikan generate.
Selain perintah generate, Stata juga memiliki perintah egen. Perintah egen egen
dapat melakukan semua operasi yang dapat dilakukan oleh generate, ditambah
beberapa fungsi lainnya, seperti mengisi dengan pola, statistik variabel, dan lainnya
(lihat di help egen).

2.2.3 Perintah drop


Perintah drop varlist berguna untuk membuang variabel-variabel (varlist) yang drop
diinginkan. ‘Lawan’ dari perintah drop adalah keep varlist, di mana variabel-
variabel lain selain varlist akan dibuang. keep
*
Perbedaan jenis variabel dapat mempengaruhi derajat keakurasian, namun berguna untuk
menghemat tempat penyimpanan dan waktu kalkulasi (dibahas dalam help data_type).

benconomy.wordpress.com 7
2 Manajemen Data

2.2.4 Struktur Data


Terdapat tiga jenis cara penanganan dataset (umum) oleh Stata:

1. Cross section. Struktur data ini adalah struktur data yang dasar di Stata.
Tidak ada unsur waktu dalam variabel ini. Untuk kembali ke struktur data
Cross Section, setting tsset atau xtreg perlu di-clear dengan menambahkan
opsi clear ke perintah tsset atau xtset.

2. Time Series. Struktur data time series mengikuti satu sampel dalam be-
berapa periode waktu. Untuk menyatakan struktur data sebagai time se-
ries, digunakan perintah tsset timevar, unitoptions. timevar di Stata tsset
bernilai 0 untuk (awal) tahun 1960, dan dihitung ke depan atau belakang
sebesar unitoptions (clocktime, daily, weekly, monthly, quarterly, halfyearly,
yearly, generic). Bila perubahan tidak berjalan sebesar 1 unit, tambahkan
opsi delta(#).

3. Panel. Struktur data panel mengikuti lebih dari satu sampel selama lebih dari
satu periode. Untuk menyatakan data sebagai data panel, gunakan perintah
xtset panelvar timevar, unitoptions. Panelvar adalah ID untuk masing- xtset
masing unit sampel yang diobservasi.

2.2.5 Bekerja dengan timevar


Seperti yang ditulis di atas, timevar yang digunakan untuk identifikasi waktu harus
berada dalam format numerik, dengan spesifikasi SIF (Stata internal form) berupa
berapa unit setelah (sebelum) tahun 1 Januari 1960 00:00.00. Format ini tidak
selalu mudah untuk diperoleh, karena data yang diperoleh berada dalam format
HRF (human readable form). Untuk mengubahnya ke dalam format SIF yang
dapat di-tsset, kita dapat menggunakan perhitungan manual untuk selisih dari
awal tahun 1960 tersebut, namun cara ini dapat dikatakan tidak praktis. Stata
menyediakan konversi antar SIF dan HRF sebagai berikut.

1. Pastikan variabel waktu HRF (tiwevar_str) telah memiliki format pena-


maan dan frekuensi yang konsisten. Contohnya, untuk data kuartal, data
harus konsisten suati format (seperti 1960Q1, 1960Q2 dst dan tidak berubah
menjadi 1970M3, 1970M6 dst).

2. Pelajari format data waktu untuk membentuk mask yang akan dikenali Stata.
Stata akan menggunakan tanda baca (. , - ␣) untuk memisahkan antar kom-
ponen waktu, Stata tidak mengenali elemen lain selain waktu (unsur terse-
but tidak diikutkan dalam mask dengan karakter #. Beberapa contoh untuk
tanggal 16 Oktober 1992:

benconomy.wordpress.com 8
2 Manajemen Data

• Oct 16, 1992 akan memiliki mask MDY


• Friday, Oct 16, 1992 akan memiliki mask #MDY
• 16 Oct 1992 akan memiliki mask DMY
• 161092 akan memiliki mask DM19Y (19Y untuk 2 digit pertama angka
tahun, untuk format tahun 2 digit)
• 1992W42 akan memiliki mask YW (mingguan)
• 1992M10 akan memiliki mask YM (bulanan)
• 1992Q3 akan memiliki mask YQ (kuartalan)
• 1992S2 akan memiliki mask YH (semesteran)

3. Ciptakan variabel baru timevar untuk konversi ke dalam bentuk SIF. Format
perintahnya adalah generate timevar = function(timevar_str,mask).
Variabel baru timevar sudah dapat digunakan untuk tsset. Supaya varia-
bel waktu tersebut tampil dalam format yang dapat dibaca, perlu dilakukan
format dengan perintah format timevar %fmt. Aplikasinya: format
generate timevar = date(timevar_str, "DMY"), format timevar %td
dan tsset timevar, daily) untuk data harian
generate timevar = weekly(timevar_str, "YW"), format timevar %tw
dan tsset timevar, weekly) untuk data mingguan
generate timevar = monthly(timevar_str, "YM"), format timevar %tm
dan tsset timevar, monthly) untuk data bulanan
generate timevar = quarterly(timevar_str, "YQ"), format timevar
%tq dan tsset timevar, quarterly) untuk data kuartalan
generate timevar = halfyearly(timevar_str, "YH"), format timevar
%th dan tsset timevar, halfyearly) untuk data semesteran

2.2.6 Peubah untuk varlist


Wildcards Sebagian besar perintah Stata lainnya juga dapat menggunakan wild-
card untuk varlist. Beberapa wildcard tersebut:

• * — digunakan sebagai substitusi satu atau lebih karakter. Contohnya, Ind*


akan masuk untuk Indonesia dan India; *Inc akan masuk untuk Stata Inc
dan Microsoft Inc.

• ? — digunakan untuk substitusi satu karakter. Contohnya, p?p? akan masuk


untuk papa maupun popo.

benconomy.wordpress.com 9
2 Manajemen Data

• ̃ — digunakan sebagai substitusi di tengah. Contohnya, pan~an akan masuk


untuk panduan dan panutan.

• _all — digunakan sebagai substitusi untuk semua variabel.

Operator Terdapat dua jenis operator dalam operasi variabel Stata, yaitu opera-
tor jenis data dan operator waktu (kedua jenis operator ini dapat dikombinasikan).
Operator-operator ini ditambahkan dengan tanda titik sebelum nama variabel (con-
tohnya, Li.varname). Berikut adalah uraian operator tersebut.

• i — Operator ini menyatakan bahwa variabel diperlakukan sebagai variabel


faktor/kualitatif. Penggunaan operator ini memudahkan pekerjaan, karena
tidak perlu lagi menciptatkan dummy untuk variabel-variabel kualitatif.

• c — Operator ini menyatakan bahwa variabel diperlakukan sebagai variabel


continuous, yaitu berisi nilai.

• # — Operator ini adalah perintah untuk membuat interaksi antar variabel.


Contohnya, var1#var2.

• L — Operator ini berguna untuk mengambil mengambil nilai sebelumnya


(lag) dari variabel. Lag dapat dispesifikasikan dengan angka (L3) ataupun
kombinasi huruf (LLL).

• F — Operator ini berguna untuk mengambil mengambil nilai berikutnya


(forward) dari variabel. Forward dapat dispesifikasikan dengan angka (F3)
ataupun kombinasi huruf (FFF).

• D — Operator ini berguna untuk perubahan nilai (difference) dari variabel.


Difference orde lebih tinggi dapat dispesifikasikan dengan angka (D2) ataupun
kombinasi huruf (DD).

2.2.7 Label
Label dalam Stata berguna untuk membantu pengguna. Contohnya, nama va-
riabel dalam Stata tidak dapat mengandung karakter spasi. Berikut ini dibahas
penggunaan label yang ada dalam stata. label
label data "label" memberikan keterangan label untuk keseluruhan dataset.
label variable varname "label" memberikan keterangan label untuk suatu
variabel, yang muncul dalam panel variabel maupun perintah describe.
label define labelname # "label" mendefinisikan sebuah label untuk memberi
label keterangan untuk masing-masing nilai angka (#), yang dapat digunakan un-
tuk variabel numerik. Fitur ini berguna terutama untuk variabel kualitatif. Satu

benconomy.wordpress.com 10
2 Manajemen Data

angka # mendapat satu label, sehingga ulangi bagian # "label" untuk masing-
masing label dalam sate set labelname.
Tambahkan salah satu dari opsi add (hanya menambah label baru), modify (me-
ngubah label yang sudah ada), dan replace (mendefinisikan ulang labelname) bila
labelname sudah ada sebelumnya.
label values varlist "labelname" meng-assign sate set value label (labelname)
yang sudah ada (di-define)ke suatu variabel (varlist).
label dir memperlihatkan daftar value label yang ada.
label list varname memperlihatkan daftar value label beserta nilai-nilai dan
label keterangan masing-masing.

2.2.8 Perintah encode dan recode


Stata tidak dapat melakukan perhitungan statistik untuk variabel dengan format
string, sehingga variabel kualitatif (seperti nama negara) perlu dikonversi men-
jadi numerik (diberi nomor ID). Untuk melakukannya, terdapat command encode encode
varname, generate newvar. Selain menciptakan angka-angka untuk masing-
masing string, perintah encode juga membuat dan meng-assign value label dengan
labelname yang sama dengan newvar. Untuk mengubah angka yang sudah ada,
digunakan perintah recode varname, generate newvar . Ilustrasi dari perintah- recode
perintah tersebut adalah sebagai berikut:
negara_str negara_num benua
Data teks No Label No Label
Indonesia 1 Indonesia 1 Asia
China 2 China 1 Asia
Jepang 3 Jepang 1 Asia
encode recode
Korea 4 Korea 1 Asia
Inggris 5 Inggris 2 Eropa
Jerman 6 Jerman 2 Eropa
Prancis 7 Prancis 2 Eropa
Amerika Serikat 8 Amerika Serikat 3 Amerika
Untuk transformasi di atas, kedua perintah yang digunakan adalah:
encode negara_str, generate(negara_num)
recode negara_num (1 2 3 4 = 1 "Asia") (5/7 = 2 "Eropa")
(8 = 3 "Amerika"), generate (benua)

2.2.9 Perintah reshape


Dataset yang diperoleh untuk analisis dapat berbentuk “long” ataupun “wide”.
Untuk mengilustrasikannya, berikut adalah beberapa bentuk yang berbeda untuk
dataset yang sama.

benconomy.wordpress.com 11
2 Manajemen Data

country time variable data

9.0e+12
3.1e+12
3.4e+12
1.1e+15
2.2e+14
1.5e+14
9.3e+11
1.6e+11
1.4e+11
data99
China 1997 gdp 7.90E+12
China 1997 investment 2.60E+12
China 1997 savings 3.30E+12

Country, variable (long), time (wide)


7.9e+12 8.4e+12
investment 2.6e+12 2.9e+12
3.3e+12 3.4e+12
6.3e+14 9.6e+14
Indonesia investment 1.8e+14 2.4e+14
1.8e+14 2.1e+14
8.4e+11 8.8e+11
investment 1.4e+11 1.6e+11
1.4e+11 1.5e+11
China 1998 gdp 8.40E+12

data98
China 1998 investment 2.90E+12
China 1998 savings 3.40E+12
China 1999 gdp 9.00E+12

data97
China 1999 investment 3.10E+12
China 1999 savings 3.40E+12
Indonesia 1997 gdp 6.30E+14
Indonesia 1997 investment 1.80E+14

variable

savings

savings

savings
Indonesia 1997 savings 1.80E+14

gdp

gdp

gdp
Indonesia 1998 gdp 9.60E+14
Indonesia 1998 investment 2.40E+14
Indonesia 1998 savings 2.10E+14

Indonesia

Indonesia
Indonesia 1999 gdp 1.10E+15
country
China
China
China
Indonesia 1999 investment 2.20E+14

UK
UK
UK
Indonesia 1999 savings 1.50E+14
UK 1997 gdp 8.40E+11
UK 1997 investment 1.40E+11
3.3e+12
3.4e+12
3.4e+12
1.8e+14
2.1e+14
1.5e+14
1.4e+11
1.5e+11
1.4e+11
investment savings

UK 1997 savings 1.40E+11


UK 1998 gdp 8.80E+11
UK 1998 investment 1.60E+11

Country, time (long), variable (wide)


UK 1998 savings 1.50E+11
2.6e+12
2.9e+12
3.1e+12
1.8e+14
2.4e+14
2.2e+14
1.4e+11
1.6e+11
1.6e+11
UK 1999 gdp 9.30E+11
UK 1999 investment 1.60E+11
UK 1999 savings 1.40E+11
Country, time, variable (long)
1997 7.9e+12
1998 8.4e+12
1999 9.0e+12
Indonesia 1997 6.3e+14
Indonesia 1998 9.6e+14
Indonesia 1999 1.1e+15
1997 8.4e+11
1998 8.8e+11
1999 9.3e+11
country time gdp
China
China
China

UK
UK
UK

Untuk melakukan konversi antar ketiga bentuk tersebut, digunakan perintah

benconomy.wordpress.com 12
2 Manajemen Data

reshape. Sebelumnya, beberapa hal perlu diketahui terlebih dahulu. Pertama, di-
mensi sekarang dari dataset (apakah wide atau long). Kedua bagaimana dataset
akan dibentuk (dimensi wide dan long yang diinginkan). Ketiga, memastikan
bahwa dataset memenuhi syarat untuk dilakukan reshape: (1) Terdapat stubnames
yang menghubungkan data-data wide j, yang dalam contoh di atas adalah awalan
data (data97, data98, dst). (2) Tidak terdapat lebih dari satu nilai untuk satu
kolom xij . Sintaks dan penjelasan perintah reshape adalah sebagai berikut:
reshape wide|long stubname, i(i_var) j(j_var) string reshape
• wide|long — Bentuk yang dituju setelah melakukan perintah, apakah wide
atau long. Perlu diketahui bahwa dapat dilakukan beberapa perintah reshape,
untuk menyesuaikan dengan struktur data.
Dalam contoh tadi, reshape wide dapat dilakukan sekali lagi untuk membuat
country, variable dan/atau time semuanya sebagai variabel wide (j).

• stubnames — Nama variabel (untuk reshape long) atau bagian umum dari
nama variabel (reshape wide). Penambahan memberikan informasi di mana
nama variabel baru ditempatkan.
Contoh dalam dataset tadi, (data) dapat digunakan untuk data97, data 98
dst. Reshape tidak dapat digunakan tanpa stubnames, contohnya untuk va-
riabel gdp, investment dst (rename menjadi datagdp, datainvestment).

• i(i_var) — Variabel-variabel yang berada dalam bentuk long, yang mengi-


dentifikasikan observasi secara unik.

• j(j_var) — Variabel lama yang akan di-expand (reshape wide), atau variabel
baru yang akan diciptakan sebagai identifier (reshape long).
Berikut opsi j untuk contoh tadi. Untuk reshape long, berikan nama variabel
baru (country, time, atau variable). Untuk reshape wide, berikan nama variabel
lama yang akan di expand (country, time, atau variable).

• string — Tambahkan opsi string bila j_var berisi huruf.


Dalam contoh tadi, tambahkan opsi string bila j_var adalah country atau
variable yang adalah data string. Jangan tambahkan opsi string bila j_var
adalah time yang adalah data numerik. Perhatikan, untuk reshape wide, isi
variabel yang akan dikonversi menjadi long adalah karakter huruf atau _
(tidak boleh mengandung karakter non-huruf seperti spasi dan titik).
Perubahan dataset oleh perintah reshape dapat di “undo”: Setelah reshape long,
perintah reshape wide (tanpa argumen/opsi) akan mengembalikan dataset seperti
sebelum reshape long tadi dilakukan; demikian juga sebaliknya. Periksa kembali
dataset setelah reshape untuk memastikan dataset seperti yang diinginkan, sebelum
melakukan kalkulasi statistik atau save dataset.

benconomy.wordpress.com 13
2 Manajemen Data

2.2.10 Operator if, in dan by


Akhiran if expression berguna untuk membuat Stata melakukan perintah if
hanya pada observasi yang memenuhi kriteria (expression) yang dibuat dalam if.
Berbagai operator dapat digunakan untuk expression, seperti >, >=, <, <= dan
== (gunakan dua (bukan satu!) tanda sama dengan). if dapat digunakan pada
sebagian besar perintah Stata. Tambahkan if expression pada akhir perintah yang
diinginkan.

Akhiran in obsno — Berguna untuk membuant Stata melakukan perintah hanya if


pada nomor observasi yang dispesifikasikan (obsno). Nomor observasi 1 2 3 4 juga
dapat dinyatakan dengan 1/4 dan 1 2/4. in dapat digunakan pada sebagian besar
perintah Stata. Tambahkan in obsno pada akhir perintah yang diinginkan.

Awalan by (varlist): — Berguna untuk membuat Stata melakukan perin- by


tah secara berkelompok (berulang) dengan variabel dalam varlist. by memerlukan
dataset untuk diurutkan (sort) sesuai dengan varlist (sort varlist). Tambahkan sort
by(varlist): sebelum mengetikkan perintah yang diinginkan.
Awalan bysort digunakan dengan cara yang sama dengan awalan by. Perbe- bysort
daannya, bysort termasuk perintah sort, sehingga dataset akan diurutkan sesuai
dengan varlist terlebih dahulu.

2.2.11 Perintah count dan list


Perintah count berguna untuk menghitung dan menampilkan jumlah observasi count
yang memenuhi kriteria. Kriteria yang dimaksud dapat dispesifikasikan dengan
operator if, in ataupun by. Eksekusi count sangat cepat dibandingkan dengan pe-
rintah statistik lainnya, sehingga perintah ini biasanya digunakan untuk mengecek
suatu dataset (terutama dengan menggunakan do-file).
Perintah list varlist berguna untuk menampilkan nama variabel dalam varlist list
dan nilai-nilainya. Perintah list sering digunakan dengan operator if, in atau by.Sama
seperti count, eksekusi perintah list sangat cepat dan biasanya digunakan untuk
mengecek suatu dataset. Di samping itu, penggunaan list biasanya dapat mende-
teksi kesalahan data secara lebih mudah dibandingkan edit ataupun browse.

benconomy.wordpress.com 14
3 Analisis Deskriptif

3 Analisis Deskriptif
3.1 Statistik deskriptif
Tabel statistik deskriptif membantu menampilkan isi dari variabel secara ringkas
dengan berbagai statistik. Semua tabel statistik berikut dapat digunakan dengan
opsi if, in maupun by.
Perintah summarize varlist berguna untuk menampilkan statistik deskriptif
seperti mean (rata-rata), median, dan data terkecil (min) dan terbesar (max) untuk summarize
suatu variabel secara keseluruhan. Bila tidak terdapat varlist, perintah ini akan
menampilkan statistik deskriptif untuk seluruh variabel. Tambahkan opsi detail
untuk mendapatkan statistik deskriptif yang lebih detail.
Perintah tabulate varname1 varname2 berguna untuk membuat tabulasi (per- tabulate
hitungan seberapa banyak suatu variabel muncul) dalam satu atau lebih variabel.
Bila hanya satu variabel yang ditabulasi, maka cukup menggunakan varname1.
Tambahkan varname2 bila menggunakan tabulasi dua variabel. Beberapa opsi yang
tersedia untuk tabulasi dua variabel adalah column, row dan cell yang membuat
tabulasi menampilkan frekuensi relatif (persentasi) dari nilai suatu nilai diband-
ingkan masing-masing keseluruhan kolom, baris dan total.
Perintah table “menggabungkan” kekuatan dari summarize dan tabulate, di
mana tabulasi (maksimal 4) statistik deskriptif dapat ditampilkan untuk dua atau
lebih variabel. Sintaks perintah table adalah sebagai berikut:
table varname(s), contents(clist) table

varnames adalah variabel-variabel yang akan ditabulasi. Variabel pertama akan


menjadi variabel yang ditampilkan sebagai baris (i); sedangkan variabel kedua
menjadi variabel kolom j. Variabel ketiga dan seterusnya akan menjadi super-
kolom (kolom dalam kolom).

clist adalah jenis statistik yang akan ditampilkan untuk masing-masing nilai.
clist dapat menampilkan freq (frekuensi) ataupun statistik lainnya: mean, sd,
max, min, median, sum (spesifikasikan variabel yang hendak dideskripsikan
setelah opsi ini).

by(varlist) Penambahan opsi ini akan membuat super-row (baris dalam baris)
dengan variabel varlist (maksimum 4 level).

benconomy.wordpress.com 15
3 Analisis Deskriptif

3.2 Grafik
Stata memiliki kemampuan grafis yang cukup komprehensif. Selain melalui pe-
rintah, menu untuk grafik tersedia dalam menu Graphics dengan dialog box yang
cukup membantu proses pembuatan grafik yang diinginkan. Untuk memudahkan,
perintah grafik akan diperkenalkan menggunakan contoh.
Perintah histogram varname berguna untuk membuat diagram batang. Tam- histogram
bahkan opsi normal untuk menambahkan grafik distribusi normal. Contoh perin-
tah yang dapat dijalankan:
sysuse citytemp
histogram tempjuly
histogram tempjuly, normal
Dalam kedua contoh tersebut, Stata akan menampilkan jumlah dan lebar diagram
batang secara otomatis. Untuk mengubah jumlah tersebut, gunakan opsi bin(#)
dan width(arg1#). Untuk diagram batang tampilan jumlah frekuensi dan persen-
tase, tambahkan opsi frequency dan percentage. Bila ingin menggunakan satu
diagram batang untuk setiap nilai, tambahkan opsi discrete.
Perintah twoway (plot) berguna untuk membuat grafik antar variabel. Bila twoway
lebih dari satu plot, tanda kurung () untuk menandai masing-masing plot. Elemen
definisi (plot) adalah sebagai berikut:

jenis plot — Dua pilihan yang sering digunakan adalah scatter, dan line. Selain
plot data langsung, dapat juga ditambahkan plot trend/regresi, yaitu lfit
(linear fit) qfit (quadratic fit). Pilihan lfitci dan qfitci menampilkan
confidence interval yang dapat diset dengan tambahan opsi grafis level(#).
Perlu diperhatikan bahwa jenis plot tertentu dapat memiliki sintaks yang
berbeda dengan yang dibahas di sini (contohnya rarea).

varlist y — Dapat terdapat lebih dari satu variabel y untuk satu definisi plot (diplot
masing-masing).

varname x — Hanya terdapat satu variabel x untuk satu definisi plot.

opsi — Plot dapat menggunakan beberapa skala y maupun x, yang dispesifikasikan


dengan yaxis(#) dan xaxis(#). Terdapat banyak opsi lain yang tergantung
pada jenis plot. Contohnya, kita dapat menspesifikasikan jenis marker untuk
scatter (lihat help marker_options) dan garis (lihat help line_options)
untuk line.

Perintah histogram dan twoway yang diperkenalkan di atas adalah “singkatan”


dari perintah graph Stata, di mana sintaks lengkap adalah graph twoway. Khusus
scatter dan line, sintaks twoway dapat dihilangkan (contohnya, line varname).

benconomy.wordpress.com 16
3 Analisis Deskriptif

Hasil dari perintah grafik Stata dapat disimpan ke dalam file grafis untuk digu-
nakan dalam program lainnya. Perintah untuk mengekspor grafik yang sedang
terbuka tersebut adalah graph export filename.ext. .ext diperlukan untuk
menspesifikasikan tipe file yang diekspor, seperti .pdf, .wmf, .eps dan .png.
Berikut adalah beberapa contoh perintah penggunaan grafik twoway dengan
menggunakan dataset bawaan Stata.
sysuse auto
twoway scatter price mpg 15,000
10,000
Price
5,000
0

10 20 30 40
Mileage (mpg)

twoway (scatter price mpg) (lfit price mpg)


15,000
10,000
5,000
0

10 20 30 40
Mileage (mpg)

Price Fitted values

benconomy.wordpress.com 17
3 Analisis Deskriptif

twoway (scatter mpg weight) (scatter price weight, yaxis(2))

15,000
40

10,000
30
Mileage (mpg)

Price
5,000
20 10

0
2,000 3,000 4,000 5,000
Weight (lbs.)

Mileage (mpg) Price

sysuse sp500
twoway line close date
1400
1300
Closing price
1200
1100
1000

01jan2001 01apr2001 01jul2001 01oct2001 01jan2002


Date

twoway line close date, yscale(log)


1400
1300
1200
Closing price
1100 1000

01jan2001 01apr2001 01jul2001 01oct2001 01jan2002


Date

benconomy.wordpress.com 18
3 Analisis Deskriptif

twoway (rarea open close date in 1/30) (connected volume date in


1/60,yaxis (2))

1380

20,000
1360
Opening price/Closing price

Volume (thousands)
1340

15,000
1300 1320

10,000
1280

01jan2001 01feb2001 01mar2001 01apr2001


Date

Opening price/Closing price Volume (thousands)

twoway (qfitci close date, level(90)) (line close date)


1400
1300
1200
1100
1000

15000 15100 15200 15300 15400


Date

90% CI Fitted values


Closing price

sysuse citytemp
histogram tempjuly, normal
.15
.1
Density
.05
0

60 70 80 90 100
Average July temperature

benconomy.wordpress.com 19
4 Analisis Regresi OLS

4 Analisis Regresi OLS


4.1 Review
4.1.1 Metode OLS
Metode regresi OLS (Ordinary Least Squares) adalah salah satu pendekatan untuk
melakukan estimasi parameter yang menentukan nilai variabel independen. OLS
termasuk keluarga estimasi “method of moments”, di mana salah satu ‘momen’ dari
sampel digunakan untuk mengestimasi parameter populasi. Metode regresi dimulai
dari mengspesifikasikan fungsi regresi populasi;

yi = β0 + β1 xi + εi (1)

dengan asumsi
E(ε) = E (y − β0 − β1 x) = 0 (2)
dan asumsi yang mengikutinya;

Cov(x, ε) = E(xε) = E [x (y − β0 − β1 x)] = 0 (3)

Dalam pendekatan method of moments, kita menggunakan nilai (rata-rata)


sampel untuk mengestimasi nilai populasi, sehingga persamaan (2) dan (3) menjadi:

n
−1
n (yi − β0 − β1 xi ) = 0 (4)
i=1

dan

n
−1
n [xi (yi − β0 − β1 xi )] = 0 (5)
i=1

Dengan menggunakan sifat operator dan memindahkan ruas, persamaan (4)
dapat ditulis ulang menjadi:
β̂0 = ȳ − β̂1 x̄ (6)
Dengan memindahkan (6) ke persamaan (5) dan menghilangkan n−1 yang tidak
mempengaruhi hasilnya, kita dapat memperoleh:
n [
∑ ( ( ) )]
−1
n xi yi − ȳ − β̂1 x̄ + β1 xi = 0 (7)
i=1

Atur ulang persamaan tersebut, kita memperoleh:



n ∑
n
xi (yi − ȳ) = β̂1 xi (xi − x̄)
i=1 i=1

benconomy.wordpress.com 20
4 Analisis Regresi OLS

Dengan menyusun ulang† ;



n ∑
n
xi (yi − ȳ) (xi − x̄) (yi − ȳ)
i=1 i=1 Cov(x, y)
β̂1 = = = (8)
∑n ∑
n
Var(x)
xi (xi − x̄) (xi − x̄)
2

i=1 i=1

Dalam kasus multivariabel, maka lebih dari satu variabel independen masuk
dalam persamaan (1):

yi = β0 + β1 x1i + β2 x2i + · · · + βj xji + εi

Persamaan di atas dapat ditulis dalam bentuk matriks:


     
y1 β0 (1) β1 x11 β2 x12 . . . βj x1j ε1
 y2  β0 (1) β1 x21 β2 x22 . . . βj x2j   ε2 
     
 ..  =  .. .. .. . .. .. 
. + . 
.  . . .   .. 
yn β0 (1) β1 xn1 β2 xn2 . . . βj xnj εn
y = Xβ + ε (9)

Vektor parameter β yang diestimasi adalah vektor yang akan meminimumkan


jumlah kuadrat error ε′ ε. Berikut vektor vektor parameter sampel b yang memi-
nimumkan error kuadrat sampel e′ e:

Min e′ e = (y − Xb)′ (y − Xb) (10)


= y′ y − b′ X′ y − y′ Xb + b′ X′ Xb
= y′ y − 2y′ Xb + b′ X′ Xb

Keadaan yang meminimumkan error‡ adalah:

∂e′ e
= −2X′ y + 2X′ Xb = 0
∂b
2X′ y = 2X′ Xb
−1
b = (X′ X) (X′ y) (11)

Penurunan yang diuraikan di sini mengikuti method of moments.

Penurunan yang diuraikan di sini mengikuti metode Least Squares, yang identik dengan
estimator method of moments (dan juga maximum likelihood)

benconomy.wordpress.com 21
4 Analisis Regresi OLS

4.1.2 Asumsi OLS


Dalam regresi, parameter estimasi perlu memenuhi kriteria yang sering disingkat
BLUE, yaitu Best (parameter estimasi meminimumkan varians (kuadrat) error),
Linear (persamaan yang diestimasi bersifat linear), Unbiased (parameter estimasi
tidak bias) dan Estimator (parameter adalah estimator yang baik untuk parameter
populasi). Estimator yang tidak bias dan konsisten berarti parameter sesuai dengan
parameter populasi dan semakin dekat dengan parameter populasi ketika sampel
ditambah (plim β̂ = β)
Berikut rangkuman definisi yang lebih formal dari asumsi OLS:

OLS 1 Parameter bersifat linear. yi = β0 + β1 x1 + · · · + βj xj

Dengan kata lain, parameter model populasi tidak dapat bersifat


bersifat non-linear, seperti xβ1 1 atau β1 x1 β2 x2 .

OLS 2 Random Sampling

Data yang diambil adalah sampel yang diambil secara random dari
populasi yang hendak dipelajari.

OLS 3 Corr(x1 , x2 , . . . , xj ) ̸= ±1

Tidak adanya multikolinearitas sempurna antara variabel indepen-


den.

OLS 4 Variasi dalam sampel.

Nilai sampel tidak konstan (hanya satu nilai) untuk satu variabel.
Asumsi ini adalah implikasi asumsi sebelumnya.

OLS 5 E(ε|x) = 0 (zero conditional mean)

Nilai error yang diekspektasikan bernilai 0 untuk semua nilai x.


Implikasinya adalah (1) korelasi x dan ε adalah 0 dan (2) E(y|x) =
ŷ. Asumsi ini adalah dasar pendekatan method of moments yang
digunakan dalam persamaan (2) dan (3).

OLS 6 Corr(εi , εj ) = 0

Tidak ada korelasi antar error dalam seluruh sampel.

OLS 7 Var(εi ) = σ 2

Varians error tidak berubah/konstan untuk semua nilai xj .

benconomy.wordpress.com 22
4 Analisis Regresi OLS

Data/model yang tidak memenuhi asumsi tersebut akan mengakibatkan pa-


rameter yang diestimasi tidak memenuhi kriteria BLUE. Karena itu, dibutuhkan
(1) teknik deteksi pelanggaran asumsi tersebut untuk mengetahui adanya estimasi
yang tidak konsisten dan (2) teknik estimasi yang mampu mengkoreksi pelang-
garan yang terjadi untuk menghasilkan estimasi yang tetap konsisten dan efisien.
Teknik-teknik lain yang menggunakan metode least square ada untuk mengatasi
adanya pelanggaran asumsi OLS tersebut.

4.1.3 Pengujian Hipotesis


Sebagai bagian dari teknik statistik, ekonometrika tidak lepas dari pengujian hipote-
sis. Pengujian statistik selalu menyajikan dua hipotesis yang bersifat eksklusif dan
lengkap:

H0 : a
H1 : ∼ a

Pada umumnya, peneliti “ingin” menolak H0 . Perhitungan yang dilakukan akan


menghasilkan suatu ukuran tes (test statistic), seperti nilai z atau t. Statistik ini
digunakan untuk melihat apakah peneliti akan menolak H0 (menerima H1 ) atau
gagal menolak (menerima) H0 . Dalam pengujian statistik yang melibatkan proses
inference, selalu terdapat dua kemungkinan kesalahan:

Type 1 error Menolak H0 ketika H0 benar (disebut juga false positive).


Contohnya: (1) Mendiagnosa orang sehat mengalami infeksi; (2) Membuang
produk yang sebenarnya memenuhi standar kualitas.

Type 2 error Menerima H0 ketika H0 tidak benar (disebut juga false negative).
Contohnya: (1) Mendiagnosa orang sakit tidak mengalami infeksi; (2) Mener-
ima/meluluskan produk yang sebenarnya tidak memenuhi standar kualitas.

Nilai berbagai statistik pengujian dapat digunakan untuk menghitung p-value,


yang dapat dikatakan mengukur kemungkinan terjadinya Type 1 error. Dalam
ekonometrika, pengujian yang sering dilakukan adalah melihat apakah suatu model/
variabel independen signifikan menjelaskan variabel dependen. Jadi, dalam pen-
gujian signifikansi, p-value mengukur peluang menyatakan bahwa model/variabel
independen tersebut tidak signifikan ketika model/variabel independen tersebut
signifikan. p-value dapat langsung dibandingkan dengan confidence interval (yang
seyogianya telah ditetapkan secara a-priori) untuk memutuskan apakah suatu
model/variabel independen signifikan (H1 ) atau tidak signifikan (H0 ).

benconomy.wordpress.com 23
4 Analisis Regresi OLS

4.2 Regresi OLS dengan Stata


Dapat dikatakan seperti “Swiss Army Knife” pemodelan, regresi OLS digunakan
secara paling luas dan menjadi alat paling mendasar dalam berbagai aplikasi pe-
modelan ekonomi. Sintaks perintah regresi OLS di Stata adalah sebagai berikut:
regress depvarname indepvarlist regress
Perhatikan bahwa variabel yang pertama disebut adalah (satu) variabel inde-
penden (y), sedangkan variabel-variabel yang disebut berikutnya adalah variabel-
variabel independent (x1 , x2 , . . . , xj ) dalam model persamaan yang hendak diesti-
masi. Berikut adalah contoh perintah dan output regresi dalam Stata dan panduan
interpretasinya.

A – Bagian ini adalah global test untuk signifikansi model (apakah variasi dalam
model dapat menjelaskan variasi dalam variabel dependen - joint test). Dua
statistik yang dilaporkan adalah statistik F dan p-value-nya.
B – Bagian ini melaporkan goodness of fit dari model, yaitu berapa “persen”
variasi dalam variabel dependen dapat dijelaskan oleh model, yaitu R2 dan
2 2
Radj . Radj mengkoreksi bias positif pada R2 akibat penambahan variabel
independen.
C – Konstanta (β0 ). Stata dapat mencegah adanya konstanta, dengan cara menam-
bahkan opsi noconstant (tidak dianjurkan karena akan membuat estimator
menjadi tidak konsisten).
D – Koefisien parameter estimasi βj untuk masing-masing variabel independen
xj . Bagian ini dapat diinterpretasikan: “Bertambahnya 1 unit weight menye-
babkan kenaikan 5.774712 dalam price”.

benconomy.wordpress.com 24
4 Analisis Regresi OLS

E – Standar error parameter estimasi sd(βj ).

F – Statistik t untuk masing-masing variabel independen. Statistik t dihitung


dari βj /sd(βj ).

G – p-value untuk menguji signifikansi masing-masing variabel.

H – Range masing-masing parameter estimasi dalam rentang confidence interval.


Level yang dilaporkan dapat diatur dengan menambahkan opsi level()

4.3 Penanganan Pelanggaran Asumsi


4.3.1 Heteroskedasitas
Heteroskedasitas adalah keadaan ketika varians error berubah seiring perubahan
nilai variabel independen xj . Heteroskedasitas umumnya tidak menyebabkan in-
dikator menjadi bias, namun menyebabkan kesalahan dalam perhitungan standar
error, yang menurunkan efisiensi model.

Deteksi Terdapat dua metode statistik untuk mendeteksi heteroskedasitas sete-


lah suatu model regresi diestimasi:

Breuch-Pagan Tes ini melakukan regresi OLS dengan ε2 sebagai variabel depen-
den dan fitted values model sebagai variabel independen. Untuk menggu-
nakan seluruh variabel independen dari model utama sebagai variabel inde-
penden, tambahkan opsi rhs. Metode ini mampu mendeteksi heteroskeda-
sitas yang bersifat linear. Perintah untuk melakukan BP-test adalah estat
hettest. Hasil yang dilaporkan adalah LM test-statistic yang mengikuti dis- hettest
tribusi χ2 dan p-valuenya.

White Tes ini melakukan regresi OLS dengan varepsilon2 sebagai variabel depen-
den dan seluruh variabel independen, kuadrat dan hasil perkaliannya dari
model utama sebagai variabel independen. Dengan demikian, metode ini
mampu mendeteksi heteroskedasitas dalam bentuk yang lebih kompleks. Pe-
rintah untuk melakukan White test adalah estat imtest, white. Hasil imtest
yang dilaporkan termasuk LM test-statistic yang mengikuti distribusi χ2 dan
p-valuenya.

Metode grafis untuk mendeteksi heteroskedasitas adalah dengan melakukan plot


error (variabel y) dan salah satu variabel independen (variabel x), yang dapat
dilakukan dengan perintah rvpplot varname. rvpplot

benconomy.wordpress.com 25
4 Analisis Regresi OLS

Koreksi Terdapat dua metode statistik untuk menangani heteroskedasitas.


weight Penggunaan weights (timbangan) untuk “menormalkan” efek variabel yang
“menyebabkan” heteroskedasitas. Contohnya, varians error adalah linear dari
suatu variabel (Var(ε) = σ 2 = αx2 ), sehingga perlu timbangan 1/x22 menghi-
langkan korelasi antara x2 dengan ε. Untuk menggunakan koreksi ini, tam-
bahkan [aweight=varlist] di akhir command, sebelum tanda koma. Pe-
rintah untuk contoh sebulumnya:
gen invdepvar2sq=1/depvar2ˆ2
regress indepvar depvar1 depvar2 [aweight=invdepvar2sq] aweight

robust Tambahkan opsi robust setelah perintah estimasi untuk menggunakan


standard error yang mampu menangani adanya heteroskedasitas (heteroske-
dascity robust). Contoh:
regress indepvar depvar1 depvar2, robust robust

Kedua metode tersebut dapat dikombinasikan. Bila variabel yang menyebabkan


heteroskedasitas tersebut diketahui, variabel tersebut dapat ditransformasikan bila
dimungkinkan oleh teori yang mendasari spesifikasi model.

4.3.2 Autokorelasi
Autokorelasi adalah adanya hubungan antara error satu observasi dengan error
observasi lainnya. Autokorelasi umumnya lebih umum terjadi pada data time se-
ries, di mana terjadi antara error suatu periode (εt ) dengan error periode lainnya
(εt−1 , εt2 , . . .). Autokorelasi dapat menyebabkan parameter estimasi menjadi bias,
sehingga harus ditangani.

Deteksi Untuk mendeteksi adanya autokorelasi secara grafis, Stata menyedi-


akan tiga perintah:
corrgram varname corrgram
ac varname (grafik autokorelasi)
ac
pac varname (grafik autokorelasi parsial)
Tambahkan opsi lags(#) untuk menampilkan autokorelasi sebanyak # lag. pac
Terdapat dua metode statistik untuk mendeteksi adanya autokorelasi.

Durbin-Watson Pengujian Durbin-Watson hanya dapat mendeteksi autokorelasi


dengan lag 1 error (εt−1 ). Statistik Durbin Watson berada di antara 0-4.
Nilai dekat 0 mengindikasikan autokorelasi positif, sedangkan nilai dekat
4 mengindikasikan autokorelasi negatif. Dengan demikian, nilai dekat 2
mengindikasikan tidak adanya autokorelasi. Perintah untuk menampilkan
statistik Durbin-Watson di Stata adalah estat dwatson. Pengembangan uji dwatson

benconomy.wordpress.com 26
4 Analisis Regresi OLS

Durbin menghasilkan estat durbinalt yang memungkinkan uji hipotesis.


durbinalt
Tambahkan opsi lags(numlist) untuk menspesifikasikan lag autokorelasi
yang diuji.

Breuch-Godfrey Tes Breuch-Godfrey dilakukan dengan melakukan regresi error


terhadap error lag periode yang dispesifikasikan. Perintah untuk BG test di
Stata adalah sebagai berikut:
estat bgodfrey, lags(numlist) bgodfrey
di mana numlist adalah lag-lag yang ingin diuji (dapat lebih dari satu).
Pengujian sebanyak lebih dari 1 lag periode dilakukan secara terpisah.

Koreksi Koreksi untuk masalah autokorelasi sebaiknya dilakukan mengubah


spesifikasi model, atau menggunakan metode time series (bukan hanya OLS),
seperti penambahan lag variabel dependen ke dalam model (model AR). Walau
demikian, terdapat dua metode OLS yang mampu menangani autokorelasi. Per-
tama, menggunakan transformasi Cochrane-Orkutt dengan perintah sebagai berikut:
prais depvar indepvarlist, corc prais
Perintah ini memiliki berbagai opsi dan pendekatan lain untuk menangani autoko-
relasi yang dapat dieksplorasi lebih lanjut. Kedua, menggunakan standar error
Newey-West yang robust terhadap autokorelasi (dan heteroskedasitas) dengan pe-
rintah sebagai berikut:
newey depvar indepvarlist, lag(#) newey
Perintah ini memungkinkan penanganan lags dengan order yang lebih tinggi. Lags
maksimum yang digunakan dalam model dapat dispesifikasikan menggunakan opsi
lags(#)

4.3.3 Multikolinearitas
Multikolinearitas adalah adanya kombinasi linear korelasi antara variabel-variabel
independen, yang menyebabkan adanya korelasi. Kolinearitas antara dua variabel
independen dapat dilihat secara grafis dengan menggunakan perintah
graph matrix varlist.
Dalam Stata, statistik untuk mendeteksi multikolinearitas dapat ditampilkan
dengan perintah estat vif. Nilai Mean VIF yang lebih dari 10 dapat dikatakan vif
mengindikasikan adanya kolinearitas. Namun, tidak terdapat batasan yang definitif
mengenai statistik ini untuk menguji hipotesis secara statistik.
Secara matematis, tidak mungkin melakukan estimasi OLS bila terdapat satu
variabel independen yang adalah gabungan dari satu atau lebih variabel independen
lain. Dalam sebagian besar kasus, multikolinearitas umumnya tidak menyebabkan
masalah estimasi. Bahkan, sulit untuk menemukan variabel-variabel independen

benconomy.wordpress.com 27
4 Analisis Regresi OLS

yang tidak berkorelasi (terutama untuk data time series). Multikolinearitas mu-
lai menjadi masalah bila terdapat variabel yang ‘benar-benar’ bergerak bersama
(korelasi >90%). Hal ini dapat menyebabkan variabel-variabel yang mengalami
kolinearitas secara bersama-sama tidak signifikan, sedangkan sebenarnya berpen-
garuh terhadap variabel dependen (signifikan secara joint test). Kolinearitas akan
hilang dengan mengeluarkan variabel yang ber-kolinear dari model. Namun, hal
tersebut dapat menyebabkan omitted variabel bias yang serius. Tidak terdapat
metode yang definitif untuk menangani multikolinearitas, sehingga menjadi kebi-
jakan peneliti untuk memutuskan variabel yang tetap dimasukkan dalam model
bilamana terjadi multikolinearitas.

4.4 Instrumental Variables


Penggunakan Instrumental Variables (berikutnya disebut IV) dalam regresi adalah
salah satu teknik untuk menangani pelanggaran asumsi adanya korelasi antara
satu atau lebih variabel independen dengan error term ε. Dimulai dari spesifikasi
persamaan utama;

yi = β0 + β1 x1i + · · · + βj xji + βk xki + · · · + βm xmi + εi

di mana variabel-variabel βk xki + · · · + βm xmi berkorelasi dengan error;

Corr ((xk , . . . , xm ) , εi ) ̸= 0

Pelanggaran ini akan menyebabkan estimator yang bias dan tidak konsisten. Pen-
gujian dapat dilakukan dengan cara regresi dengan menggunakan error dari model
utama sebagai variabel dependen.
Untuk mengatasi masalah bias yang ditimbulkan, diperlukan adanya variabel
z1 , z2 , . . . , zv yang berkorelasi dengan variabel yang bermasalah dan tidak berko-
relasi dengan error untuk dijadikan IV untuk variabel yang bermasalah tersebut.
Dengan demikian, variabel independen dalam model tidak lagi berkorelasi dengan
error, sehingga dapat dihasilkan parameter yang konsisten.
Perintah untuk menerapkan regresi dengan IV adalah:
ivregress method depvar indepvarlist (indepvarlist2 = ivvarlist) ivregress

method adalah cara melakukan estimasi dengan IV. 3 metode yang dapat dipilih
adalah 2SLS, liml dan gmm.

depvar adalah variabel independen yang diestimasi.

indepvarlist adalah variabel-variabel independen yang tidak mengalami masalah


korelasi dengan error.

benconomy.wordpress.com 28
4 Analisis Regresi OLS

indepvarlist2 adalah variabel-variabel independen yang mengalami masalah ko-


relasi dengan error, sehingga dicarikan variabel instrumen.

ivvarlist adalah variabel-variabel yang dijadikan Instrumental Variable.

4.5 Specification Test


Pengujian spesifikasi adalah salah satu topik paling penting dalam pemodelan, di
mana spesifikasi persamaan regresi diuji untuk mendapatkan fungsi regresi populasi
yang sedekat mungkin dengan fungsi “asli”. Teori yang dipelajari melalui pemode-
lan sering memberi usul mengenai bentuk persamaan model secara a priori, yang
tidak selalu didukung dengan temuan parameter estimasi. Hal ini membuat pen-
gujian spesifikasi menjadi penting: Data dapat mengusulkan temuan yang berbeda
dengan teori, atau memperlihatkan bahwa teori tersebut benar atau tidak. Men-
dapat “informasi” yang tepat dari data adalah tujuan dari pengujian spesifikasi:
Apakah suatu variabel signifikan dalam model, bagaimana seharusnya suatu va-
riabel dispesifikasikan dalam model (linear, logaritma, dlsb.), dan apakah perlu
ditambahkan variabel independen lainnya ke dalam model.
Dua hal perlu diperhatikan dalam pengujian spesifikasi. Pertama, adanya va-
riabel yang redundant atau tidak signifikan tidak akan parameter estimasi menjadi
bias, namun akan mengurangi degrees of freedom dan efisiensi model. Kedua,
adanya variabel yang signifikan namun tidak dimasukkan dalam suatu model akan
membuat parameter menjadi bias. Bias memiliki pengaruh yang lebih merusak
dibandingkan inefisiensi. Hal ini menunjukkan pentingnya pengujian spesifikasi
yang dilakukan secara benar.
Metode formal uji spesifikasi cukup luas, termasuk pengujian manual seperti
dalam metode Mizon dan Richard (1986)§ atau Davidson MacKinnon “J Test”
(1981)¶ untuk non-nested model dan metode Ramsey Regression Error Specifica-
tion Test (RESET)‖ . Stata memiliki command untuk melakukan pengujian Ramsey
RESET, dengan perintah sebagai berikut:
estat ovtest ovtest
§
Masukkan berbagai bentuk spesifikasi fungsional dari variabel yang sama ke dalam model, dan
uji menggunakan Wald test apakah koefisien untuk masing-masing kelompok spesifikasi apakah
koefisionnya sama dengan 0.

Untuk mempelajari bentuk fungsional spesifikasi A dan B, lakukan estimasi untuk kedua
persamaan tersebut, dan diambil error masing-masing persamaan. Ambil persamaan dari satu
model (misal model A) dan masukkan ke model satunya (Model B) sebagai variabel independen.
Lakukan regresi model satunya tersebut dengan error. Bila koefision error model A dalam model
B tersebut tidak signifikan, model A telah dispesifikasikan dengan benar. Prosedur yang sama
dilakukan untuk model B.

Mengambil polinomial dari fitted values dan memasukkannya ke dalam model utama. Bila
polinomial model utama signifikan, maka model tersebut mengandung omitted variables.

benconomy.wordpress.com 29
4 Analisis Regresi OLS

ovtest adalah singkatan untuk ommited variable test. Perintah ini dapat di-
lakukan setelah estimasi OLS. Bila kita ingin menggunakan polinomial dari va-
riabel independen (bukan hanya fitted values variabel dependen), tambahkan opsi
rhs.

4.6 Setelah estimasi…


4.6.1 Perintah predict
Perintah predict berguna untuk membuat prediksi dari estimasi yang telah di-
lakukan, baik prediksi fitted values, residual, dan lainnya. Berikut sintaks perintah
tersebut.
predict varname, options predict
Hasil perintah tersebut dimasukkan dalam variabel baru (varname) yang dispesi-
fikasikan. Nilai yang dapat diprediksi dispesifikasikan dalam options:
xb Analogis dengan Xβ, yaitu prediksi linear/fitted values dari model.
residuals Error εi hasil regresi.
rstd Nilai standardized dari error.
stdp Standar error nilai fitted values.
stdf Standar error nilai forecast (nilai baru).
stdr Standar error nilai error.

4.6.2 Perintah estimates


Perintah estimates berguna untuk menyimpan, mengelola dan mengakses hasil estimates
estimasi yang telah dilakukan sebelumnya. Dengan adanya fitur ini, kita tidak perlu
menyimpan log-file Stata (.smcl) hanya untuk menyimpan hasil estimasi (lihat opsi
save). Di samping itu, perintah ini juga menyimpan lebih banyak detail yang tidak
ditampilkan dalam tabel laporan estimasi. Berikut adalah beberapa penggunaan
perintah tersebut.
estimates store modelname — menyimpan hasil regresi ke dalam memori
(hilang bila Stata dimatikan) dengan nama modelname. Untuk mengak-
ses/mengaktifkan kembali hasil estimasi yang telah di-store, gunakan perintah
estimates restore modelname.
estimates save filename — menyimpan hasil regresi dengan nama filename
ke hard-disk. Untuk mengakses kembali hasil estimasi yang telah di-save,
gunakan perintah estimates use filename.

benconomy.wordpress.com 30
4 Analisis Regresi OLS

estimates replay modelnamelist — menampilkan kembali laporan/tabel esti-


masi untuk hasil model-model dalam memori. Untuk menampilkan kembali
perintah regresi yang dilakukan dalam suatu model yang disimpan, gunakan
perintah estimates describe modelname (hanya satu model).

estimates table modelnamelist, options — menampilkan satu atau lebih


hasil estimasi dalam suatu tabel secara vertikal, yang (terutama) berguna
untuk memilih model. Opsi yang dapat digunakan adalah:

• Menampilkan beberapa statistik sekaligus untuk satu model, atau meng-


gunakan ‘bintang’ (*) untuk menandai variabel yang signifikan. Bila
kita ingin menampilkan beberapa statistik sekaligus, tambahkan statis-
tik yang diinginkan secara langsung: b (koefisien estimasi), se (standard
error koefisien estimasi), t (statistik t terkait) dan p (p-value). Bila kita
ingin menggunakan ‘bintang’ tambahkan opsi star(#1 #2 #3), di mana
#1 adalah angka untuk mendapat 1 bintang, #2 adalah angka untuk
mendapat 2 bintang, dan seterusnya.
• Menampilkan statistik goodness of fit model. Statistik yang dapat dita-
mpilkan dimasukkan dalam stat(list), di mana list dapat berupa r2
(R2 ), r2_a (adjusted R2 ) ll (likelihood ratio), N (jumlah sampel), df_r
(degress of freedom model), AIC dan BIC.

Untuk menunjukkan bagaimana menggunakan estimates digunakan, beberapa


baris perintah berikut ini dapat menampilkan contohnya.
sysuse auto, clear
regress pr mp re tr
estimates store model1
regress pr mp re
estimates store model2
estimates table model1 model2, b se p stats(r2 r2_a df_r)
estimates table model1 model2, star(0.05 0.01 0.001)
estimates describe model1
estimates describe model2
estimates replay model1 model2
Alternatif perintah estimates table yang memiliki kemampuan menampilkan
beberapa statistik sekaligus dan bintang secara bersamaan, kontrol hasil tampilan
lebih baik serta ekspor hasil ke program lain (seperti LATEX) adalah paket estout.
Gunakan perintah ssc install estout, replace untuk meng-install paket ini
ke dalam Stata (dibutuhkan koneksi internet untuk download paket).

benconomy.wordpress.com 31

Anda mungkin juga menyukai