Macro Minitab: Local Macro
Macro Minitab merupakan himpunan dari command Minitab dan statement macro yang disimpan dalam sebuah file, biasanya dalam file text. Macro Minitab dapat digunakan untuk automisasi tugas yang berulang, mengembangkan fungsi-fungsi yang telah tersedia dalam Minitab atau untuk simulasi. Biasanya macro Minitab dibuat dengan tujuan untuk menjawab permasalahan yang spesifik atau lebih kompleks dimana fasilitas tersebut masih belum tersedia secara langsung dalam Minitab. Jenis macro Minitab ada beberapa, namun yang jadi pembahasan kali ini adalah Local Macro.
LOKAL MACRO
Local macros atau Macros adalah macro yang lebih kompleks dan lebih rumit namun lebih canggih (powerful) dan fleksibel daripada global macro. Local macro menggunakan variabel sementara (temporary), argumen, dan subcommand (atau bisa disebut elemen). Elemen tersebut berguna untuk meningkatkan kemampuan dari macro sehingga struktur yang digunakan berbeda dengan struktur global macro.
MACRO
NAMA arg1; arg2; dst
Declaration statement
Body of the macro
ENDMACRO
NAMA (Nama template untuk local macro sedikit berbeda dengan global macro karena terdapat tambahan argumen setelah nama macro. Nama template ini nantinya digunakan untuk memanggil local macro dan argumen yang menyertai layaknya menjalankan command/ subcommand di Minitab.)
Declaration statements:
Masing-masing variabel yang digunakan di local macro harus dideklarasikan setelah nama macro. Variabel tersebut ada tiga meliputi :
kolom (MCOLUMN),
konstanta (MCONSTANT),
matrik (MMATRICES).
Body of macro (Sama dengan global macro)
Cara menjalankan: %D:\analyze.txt arg1 arg2 arg... (ditulis di Command Window)
Beberapa Contoh LOCAL MACRO :
#Distribusi Normal
MACRO
NORMAL n mu sig x
MCOLUMN x
MCONSTANT n mu sig
RANDOM n x;
NORMAL mu sig.
ENDMACRO
#Mengurutkan Data
MACRO
URUT Xawal Xurut
MCOLUMN Xawal Xurut
MCONSTANT N i j TEMP
COPY Xawal Xurut
Let N=Count(Xawal)
DO i=1:N
DO j=1:N
IF Xurut(i)<Xurut(j)
Let TEMP=Xurut(j)
Let Xurut(j)=Xurut(i)
Let Xurut(i)=TEMP
ENDIF
ENDDO
ENDDO
NAME Xawal"X" Xurut"X_Urut"
ENDMACRO
#Memisahkan Data
MACRO
PISAH X Y ygPISAH
MCOLUMN X Y ygPISAH
MCONSTANT i N yg1 yg0
LET N=Count(Y)
LET yg1=0
LET yg0=0
DO i=1:N
IF X(i)>=3.5
Let ygPISAH(i)=1
Let yg1=yg1+1
ELSE
Let ygPISAH(i)=0
Let yg0=yg0+1
ENDIF
ENDDO
Print yg1 yg0 N
ENDMACRO
#Missing Value
macro
MissingValue X
MCOLUMN X
MCONSTANT i N
Let N=Count(X)
Print N
DO i=1:N
IF X(i)='*'
GOTO 1
ENDIF
ENDDO
MLABEL 1
DELETE i X
endmacro
#Pengulangan
MACRO
RATA2 X
MCOLUMN X
MCONSTANT I
DO I=1:5
LET X(I)="diulang 5x"
ENDDO
Name X"Pengulangan"
ENDMACRO
#Median data X
MACRO
URUT Xawal Xurut
MCOLUMN Xawal Xurut
MCONSTANT N i j TEMP MedX
COPY Xawal Xurut
Let N=Count(Xawal)
DO i=1:N
DO j=1:N
IF Xurut(i)0
Let MedX=Xurut((N+1)/2)
ELSE
Let MedX=(Xurut((N/2)+1)+Xurut(N/2))/2
ENDIF
Print MedX
#Mean data X
MACRO
Rata2 X
MCOLUMN X
MCONSTANT i N Xcod MEANX
Let N=Count(X)
Let Xcod=0
DO i=1:N
Let Xcod=Xcod+X(i)
ENDDO
Let MEANX=Xcod/N
Name MEANX"Rata-rata X"
Print MEANX
ENDMACRO
#Permutasi
MACRO
Permutasi n r
MCONSTANT n r P
IF n>r
Let P=factorial(n)/factorial(n-r)
print P
ELSE
Note n kecil dari r
ENDIF
ENDMACRO
#kombinasi
MACRO
Kombinasi n r
MCONSTANT n r K
IF n>r
Let K=factorial(n)/(factorial(r)*factorial(n-r))
print K
ELSE
Note n kecil dari r
ENDIF
ENDMACRO
Posting Komentar