SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC...

23
SAS/BASE

Transcript of SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC...

Page 1: SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC SORT PROC MEANS PROC UNIVARIATE PROC FREQ PROC PLOT PROC CHART Mencetak observasi

SAS/BASE

𝜏𝜌

Page 2: SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC SORT PROC MEANS PROC UNIVARIATE PROC FREQ PROC PLOT PROC CHART Mencetak observasi

Tahapan Data (1)

Pernyataan LIBNAME Pernyataan DATA Pernyataan INFILE Pernyataan INPUT Pernyataan CARDS (DATALINES) Pernyataan DO-loop Pernyataan DROP (atau KEEP) Pernyataan Kondisi (IF-THEN-ELSE) Pernyataan Assignment Functions

Mempersiapkan data SAS

Berisi nama peubah, tipe peubah, dan lokasi

Memanggil data eksternal ke dalam data SAS

Perintah sebelum data dimasukkan

Menyimpan data SAS secara permanen

Perintah untuk melakukan pengulangan (iterasi)

Menghilangkan / mempertahankan peubah

Pernyataan kondisi

Suatu perintah untuk membuat variabel

Perintah fungsi matematika

Page 3: SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC SORT PROC MEANS PROC UNIVARIATE PROC FREQ PROC PLOT PROC CHART Mencetak observasi

Latihan tahapan data

1. Mendefinisikan data secara instream dan disimpan secara sementara di SAS

data data0;

input a b c;

cards;

1 2 3

4 5 6

7 8 9

;

proc print data=data0;

run;

data data1;

input a$ b c;

cards;

s1 2 3

s4 5 6

s7 8 9

;

proc print data=data1;

run;

Page 4: SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC SORT PROC MEANS PROC UNIVARIATE PROC FREQ PROC PLOT PROC CHART Mencetak observasi

Latihan tahapan data

2. Input data text external (format .txt) dan disimpan secara sementara di SAS

data data2;

infile "D:\data02 2019.txt";

input pend$ nama$ 4-15 nilai;

cards;

proc print data=data2;

run;

s1 Bambang 3

s2 Gunawan 6

s3 Setyonugroho 9

data02 2019.txt

Page 5: SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC SORT PROC MEANS PROC UNIVARIATE PROC FREQ PROC PLOT PROC CHART Mencetak observasi

Latihan tahapan data

3. Input data secara instream dan disimpan secara permanen menjadi gugus data SAS

libname stk "D:\";

data stk.data3ok;

input a b c;

cards;

1 2 3

4 5 6

7 8 9

;

proc print data=stk.data3ok;

run;

Page 6: SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC SORT PROC MEANS PROC UNIVARIATE PROC FREQ PROC PLOT PROC CHART Mencetak observasi

Latihan tahapan data

4. Input data external (format .txt) dan disimpan secara permanen menjadi gugus data SAS

libname stt "D:\";

data stt.data4ok;

infile "D:\data02 2019.txt";

input pend$ nama$ 4-15 nilai;

cards;

proc print data=stt.data4ok;

run;

Page 7: SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC SORT PROC MEANS PROC UNIVARIATE PROC FREQ PROC PLOT PROC CHART Mencetak observasi

Latihan 1

• Buatlah data SAS dengan nama data5, yang berisi

– Peubah x : bilangan 0 sampai 1 dengan selisih 0.05

– Peubah y : xj, dengan j merupakan indeks dari x

Page 8: SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC SORT PROC MEANS PROC UNIVARIATE PROC FREQ PROC PLOT PROC CHART Mencetak observasi

Jawaban 1

data data5 (drop=j);

j=0;

do x=0 to 1 by 0.05;

j=j+1;

y=x**j;

output;

end;

run;

proc print data=data5;

run;

proc contents data=data5;

run;

Untuk memberikan informasi tentang isi data tersebut

Page 9: SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC SORT PROC MEANS PROC UNIVARIATE PROC FREQ PROC PLOT PROC CHART Mencetak observasi

Latihan 2

• Buatlah data SAS dengan nama data6, yang berisi

– Peubah x : bilangan 1 sampai 20

– Peubah Ket : keterangan “ganjil” atau “genap” dari x

Page 10: SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC SORT PROC MEANS PROC UNIVARIATE PROC FREQ PROC PLOT PROC CHART Mencetak observasi

Jawaban 2

data data6;

do x = 1 to 20;

y = mod(x,2);

if y = 0 then Ket = "Genap";

else Ket = "Ganjil";

output;

end;

proc print data=data6;

run;

Page 11: SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC SORT PROC MEANS PROC UNIVARIATE PROC FREQ PROC PLOT PROC CHART Mencetak observasi

Ganji ????

data data6;

length ket $ 6;

do x = 1 to 20;

y = mod(x,2);

if y = 0 then ket = "Genap";

else ket = "Ganjil";

output;

end;

Drop y;

run;

proc print data=data6;

run;

Page 12: SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC SORT PROC MEANS PROC UNIVARIATE PROC FREQ PROC PLOT PROC CHART Mencetak observasi

Latihan 3

• Buatlah data SAS dengan nama data7, yang berisi

– Peubah x : bilangan 1 sampai 10

• Masih pada tahapan data, carilah rata-rata dari x dengan nama rataan

• Tampilkan hanya peubah rataan saja

Page 13: SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC SORT PROC MEANS PROC UNIVARIATE PROC FREQ PROC PLOT PROC CHART Mencetak observasi

Jawaban 3

data data7 (keep=rataan);

x=0;

n=0;

do y=1 to 10;

x=x+y;

n=n+1;

end;

rataan = x/n;

run;

proc print data=data7;

run;

Page 14: SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC SORT PROC MEANS PROC UNIVARIATE PROC FREQ PROC PLOT PROC CHART Mencetak observasi

Latihan 4

• Buatlah data SAS dengan nama data8, yang berisi

– Peubah x : bilangan 1 sampai 20

– Peubah y : 𝑦 = sin 𝑥 × 𝜋 + cos (𝑥 × 𝜋)

Page 15: SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC SORT PROC MEANS PROC UNIVARIATE PROC FREQ PROC PLOT PROC CHART Mencetak observasi

Jawaban 4

data data8 (drop=pi);

pi = constant("pi");

do x=1 to 20;

y=sin(x*pi)+cos(x*pi);

output;

end;

run;

proc print data=data8;

run;

Page 16: SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC SORT PROC MEANS PROC UNIVARIATE PROC FREQ PROC PLOT PROC CHART Mencetak observasi

PROC SAS/BASE

PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC SORT PROC MEANS PROC UNIVARIATE PROC FREQ PROC PLOT PROC CHART

Mencetak observasi pada data SAS

Menampilkan isi dari data SAS

Membaca data eksternal dan menyalinnya ke data SAS

Merubah/ memformat observasi dari variabel

Mengurutkan observasi data SAS

Ringkasan data (statistika deskriptif)

Statistika deskriptif (momen), histogram, QQplot...

Tabel frekuensi dan kontingensi

Membuat plot dari observasi 2 variabel

Membuat bar chart, pie chart, star chart

Page 17: SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC SORT PROC MEANS PROC UNIVARIATE PROC FREQ PROC PLOT PROC CHART Mencetak observasi

PROC SORT

proc sort data= … out= … ;

by descending variable;

run;

Tahapan prosedur untuk mengurutkan amatan dalam variabel (beberapa variabel)

Page 18: SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC SORT PROC MEANS PROC UNIVARIATE PROC FREQ PROC PLOT PROC CHART Mencetak observasi

Latihan 5

• Urutkanlah amatan data berikut ini berdasarkan variabel nama dan mobil masing-masing secara descending

Nama ID Mobil

Joko 7 Avanza

Budi 11 Civic

Bambang 3 Xenia

Joko 7 Jazz

Page 19: SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC SORT PROC MEANS PROC UNIVARIATE PROC FREQ PROC PLOT PROC CHART Mencetak observasi

data data9;

input Nama$ ID Mobil$;

cards;

Joko 7 Avanza

Budi 11 Civic

Bambang 3 Xenia

Joko 7 Jazz

;

proc sort data=data9 out=data9sort;

by descending nama descending mobil;

run;

proc print data=data9; run;

proc print data=data9sort; run;

Jawaban 5

Page 21: SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC SORT PROC MEANS PROC UNIVARIATE PROC FREQ PROC PLOT PROC CHART Mencetak observasi

Latihan 6

• Buatlah tabel kontingensi dari data di bawah ini, dengan peubah pre untuk bagian baris dan peubah post untuk bagian kolom, serta dengan isinya berupa peubah hasil

Pre Post Hasil

Yes Yes 30

Yes No 10

No Yes 40

No No 20

Page 22: SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC SORT PROC MEANS PROC UNIVARIATE PROC FREQ PROC PLOT PROC CHART Mencetak observasi

Jawaban 6 data data10;

input pre$ post$ hasil;

cards;

Yes Yes 30

Yes No 10

No Yes 40

No No 20

;

proc freq data=data10;

tables pre*post;

run;

proc freq data=data10;

tables pre*post/ norow nocol

nopercent;

weight hasil;

run;

Tabel kontingensi berisi frekuensi amatan

Tabel kontingensi berisi peubah hasil

Page 23: SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC SORT PROC MEANS PROC UNIVARIATE PROC FREQ PROC PLOT PROC CHART Mencetak observasi

Terima kasih