SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC...
Transcript of SAS/BASE - stat.ipb.ac.id · PROC SAS/BASE PROC PRINT PROC CONTENTS PROC IMPORT PROC FORMAT PROC...
SAS/BASE
𝜏𝜌
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
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;
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
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;
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;
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
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
Latihan 2
• Buatlah data SAS dengan nama data6, yang berisi
– Peubah x : bilangan 1 sampai 20
– Peubah Ket : keterangan “ganjil” atau “genap” dari x
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;
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;
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
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;
Latihan 4
• Buatlah data SAS dengan nama data8, yang berisi
– Peubah x : bilangan 1 sampai 20
– Peubah y : 𝑦 = sin 𝑥 × 𝜋 + cos (𝑥 × 𝜋)
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;
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
PROC SORT
proc sort data= … out= … ;
by descending variable;
run;
Tahapan prosedur untuk mengurutkan amatan dalam variabel (beberapa variabel)
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
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
PROC FREQ
Tahapan prosedur untuk menghitung dan membuat tabel kontingensi
PROC FREQ < options > ;
BY variables ;
EXACT statistic-options < / computation-options > ;
OUTPUT < OUT=SAS-data-set > options ;
TABLES requests < / options > ;
TEST options ;
WEIGHT variable < / option > ;
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
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
Terima kasih