77
Output : - Algoritma :
a. System.out.printlnHasil Asosiasi Langka; b. System.out.printlnJumlah data + jumlahbaris;
c. System.out.printlnMinimum support : + minsup; d. System.out.printlnMinimum confidence : + minconf;
e. DBArea.append\nJumlah Data : + jumlahdb; f. DBArea.append\nMinimum Support: + minsup;
g. DBArea.append\nMinimum Confidence: + minconf + \n;
8. public void tes
Input : - Output : -
Algoritma : a. temp = new ArrayList;
b. temp1 = new ArrayList; c. temp2 = new ArrayList;
d. temp3 = new ArrayList; e. temp4 = new ArrayList;
f. largeitemset = new LargeItemset; g. ada = new ArrayList;
h. tampung = new ArrayList; i. isirule = new ArrayList;
j. subset = new Vector; k. remain = new ArrayList;
l. coba = new Vector; m. supsubset = new ArrayList;
n. Candidate1Itemsets; o. cetak;
p. Arima;
3.2.4.8 Detail Algoritma pada method di kelas DataFile
78
Pada sub bab ini akan dijelaskan method dan atribut yang terdapat dalam kelas DataFile.
Atribut : private static DefaultTableModel tableModelfile;
String[][] data; String[] kolom;
private JTable table; static LinkedList list, list1;
private static int jumlahexel, jumlahcsv; private JTextArea fileArea, DBArea;
private JTextField fileSup, fileConf, nama_file; double htng, minsup = 0.0, minconf = 0.0, supsub = 0.0, supfreq = 0.0, conf
= 0.0; int i = 1, x = 0, vv = 0, jumlahbaris, jumlahkolom;
static List data1 = new ArrayList; List temp = new ArrayList;
List temp1 = new ArrayList; List temp2 = new ArrayList;
List temp3 = new ArrayList; List temp4 = new ArrayList;
List tempp = new ArrayList; List temppp = new ArrayList;
private Itemset[] itemset; static LargeItemset largeitemset = new LargeItemset;
static LargeItemset largeitemset2 = new LargeItemset; static ArrayList largeitemset1 = new ArrayList;
static ArrayList ada = new ArrayList; static ArrayList tampung = new ArrayList;
static ArrayList isirule = new ArrayList; static ArrayList subset = new ArrayList;
static ArrayList remain = new ArrayList; static ArrayList coba = new ArrayList;
ArrayList supssubset = new ArrayList;
Method :
79
1. public void pilihFileExcelFile f
Input : file excel Output : data ditampilkan dalam JTable
Algoritma : a. try
Buat object baru Workbook; Baca sheet pertama workbook.getSheet0;
Menghitung jumlah baris dan kolom; Deklarasi header tabel;
Selama i banyakBaris dan j banyakKolom; Maka getCellj, i dari sheet 1;
Masukkan data ke ArrayList; Tampilkan data pada tabel view;
b. catch IOException e e.printStackTrace;
c. catch BiffException e e.printStackTrace;
2. public void pilihFileCSVFile f
Input : file csv Output : data ditampilkan dalam JTable
Algoritma : a. try
Buat objek BufferedReader; Buat objek StringTokenizer;
Buat objek ArrayList; Jika icolumnNum maka nextToken;
Selama line = buf.readLine = null maka count akan selalu bertambah satu.
Buat objek BufferedReader; Menghitung jumlah baris dan kolom;
80
Deklarasi header tabel; Selama i count dan j columnNum;
Maka nextToken; Masukkan data ke ArrayList;
Tampilkan data pada tabel view; b. catch IOException e
e.printStackTrace; c. catch BiffException e
e.printStackTrace;
3. public void simpanDataFile
Input : - Output : data tersimpan dalam bentuk file .txt atau .doc
Algoritma : a. Buat object baru FileOutputStream;
b. Buat object baru JFileChooser; int returnValue = fileChooser.showSaveDialogfileArea;
Jika returnValue == JFileChooser.APPROVE_OPTION maka Buat object baru File;
Buat file output stream try
ambil teks dari Jteksarea fileArea.getText; ukuran teks dalam byte strwrite.length;
buat buffer byte bufOut[] = strwrite.getBytes; tulis data ke dalam file stream fos.writebufOut, 0, fsize;
tutup stream fos.close; catch IOException ie
JOptionPane.showMessageDialognull, Gagal Menyimpan Data;
JOptionPane.showMessageDialognull, Data Berhasil Disimpan di + filename;
4. public LargeItemset Rare1Itemsets
81
Input : - Output : rare 1 itemset
Algoritma : a. while jumlah data1 xx
while jumlahkolom = i while jumlahbaris=j
Buat objek baru value dengan mengambil data pada tabel Jika isi data tersebut sama dengan value
Maka nilai vvv tambah satu Tambahkan data vvv ke temp
b. While jumlah temp xx Maka buat objek baru htng
Tambahkan htng ke temp1 c. While jumlah temp1 xx
Maka buat objek baru sup1 Maka ambil data dari data1
Tambahkan item0,sup1 ke dalam temp5 Jika sup10 dan sup1minsup
Maka ambil data dari data1 Tambahkan item,sup1 ke dalam temp2
Tambahkan item ke dalam temp4 Jika sup1=minsup
Maka ambil data dari data1 Tambahkan item1,sup1 ke dalam temp6
Jika sup1==0.0 Maka ambil data dari data1
Tambahkan item1,sup1 ke dalam temp7 Jika sup10.0
Maka ambil data dari data1 Tambahkan item1,sup1 ke dalam temp8
d. Buat objek baru Itemset e. Jika z temp2
Maka theItems[z] = Itemset temp2.getz; f. Jika k temp5
Maka theItems1[k] = Itemset temp5.getk;
82
g. return LargeItemsettheItems, theItems1, 1 5. public LargeItemset RareItemsetsFile
Input : - Output : mRI i-itemset
Algoritma : a. Buat objek baru Itemset
b. Jika temp2.size Maka theItems0[mri] = Itemset temp2.getmri;
Tampilkan\n + mri + 1 + . + theItems0[mri]; c. z=temp2.size;
d. Buat objek baru Itemset e. Jika temp5.size
Maka theItems1[k] = Itemset temp5.getk; f. return LargeItemsettheItems0, theItems1, 1
6. public LargeItemset Zero1ItemsetsFile
Input : - Output : mZG i-itemset
Algoritma : a. Buat objek baru Itemset
b. Jika temp8.size Maka theItems00[y] = Itemset temp8.gety;
c. Buat objek baru Itemset d. Jika temp6.size
Maka theItems1[k] = Itemset temp6.getk; e. return LargeItemsettheItems1, theItems00, 1
7. public LargeItemset Rare1Itemsets
Input : -
83
Output : rare 1 itemset Algoritma :
a. while jumlah data1 xx while jumlahkolom = i
while jumlahbaris=j Buat objek baru value dengan mengambil data pada tabel
Jika isi data tersebut sama dengan value Maka nilai vvv tambah satu
Tambahkan data vvv ke temp b. While jumlah temp xx
Maka buat objek baru htng Tambahkan htng ke temp1
c. While jumlah temp1 xx Maka buat objek baru sup1
Jika sup10 dan sup1=minsup Maka ambil data dari data1
Tambahkan item,sup1 ke dalam temp2 Tambahkan item ke dalam temp4
d. Buat objek baru Itemset e. Jika z temp2
Maka theItems[z] = Itemset temp2.getz; f. return LargeItemsettheItems, 1
8. public Rule Arima
Input : - Output : aturan asosiasi langka
Algoritma : a. Buat objek baru Rule
b. Buat objek baru Itemset c. Buat objek baru LargeItemset
d. Panggil method put pada Itemset e. Jika itemset tidak kosong maka
84
Buat objek baru Candidate Buat objek baru Itemset
Jika ii jumlah items maka Jika iterator.hasNext maka
Buat objek baru Vector Jika elements.containsAllitems[ii].getElements
Count++ setSupport dengan countjumlahbaris
Buat objek baru Largeitemset Panggil method put di itemset
Buat itemset baru dengan largeitemset.getItems; f. Panggil method toString
g. Jika itemset tidak kosong maka Buat objek baru Candidate
Buat objek baru Itemset Jika ii jumlah items maka
Jika iterator.hasNext maka Buat objek baru Vector
Jika elements.containsAllitems[ii].getElements Count++
setSupport dengan countjumlahbaris Buat objek baru Largeitemset
Panggil method put di itemset Buat itemset baru dengan largeitemset.getItems;
Jika zz kurang dari jumlah Itemset Maka mRI.addkus[zz];
h. Jika z=0 dan mRI=0 Maka tampilkan EMPTY
i. Jika zzz mRI.size Maka tampilkan \n + zzz + z + 1 + . + + mRI.getzzz
j. Jika itemset tidak kosong maka Buat objek baru Candidate
Buat objek baru Itemset Jika ii jumlah items maka
Jika iterator.hasNext maka Buat objek baru Vector
Jika elements.containsAllitems[ii].getElements
85
Count++ setSupport dengan countjumlahbaris
Buat objek baru Largeitemset Panggil method put di itemset
Buat itemset baru dengan largeitemset.getItems; Jika zz kurang dari jumlah Itemset
Maka mZG.addkus[zz].clone; k. Jika y=0 dan mZG=0
Maka tampilkan EMPTY l. Jika y mZG.size
Maka tampilkan \n + y + 1 + . + + mZG.gety m. Jika k mRI.size
Maka itemArray[k] = Itemset mRI.getk; n. Jika aa itemset.length
Maka ada.additemset[aa]; o. Jika aaa jumlah ada maka
Jika b1 jumlah ls maka Buat objek ArrayList
Tambahkan element pada Arraylist Buat objek baru coba dengan s.getSubSet1b1 + 1;
Jika bb jumlah coba maka Jika bbb jumlah itemset maka
Jika itemset ke bbb sama dengan coba ke bb maka Flag = true
Buat objek subset dengan Vector coba.getbb; Buat objek remain dengan s.getElements;
remain.removeAllsubset; Jika iterator.hasNext maka
Buat objek Vector Jika isi coba.getbb sama dengan vector maka
Jum++ Set supsubset dengan jumjumlahbaris
Jika jumlah remain 0 maka Jika ab jumlah supsubset maka
Set supsub dengan supsubset.getab supfreq = s.getSupport;
conf = twoDecPlacessupfreq supsub;
86
Jika conf = minconf maka Tambahkan pada isirule
subset.clear; remain.clear;
supsubset.clear; p. Jika jumlah isirule = 0 maka
System.out.printlnEMPTY; Jika jumlah isirule tidak sama dengan 0 maka
Jika r jumlah isirule System.out.printlnr + 1 + . + + isirule.getr;
q. return rule
9. public void cetakFile
Input : - Output : -
Algoritma : a. System.out.printlnHasil Asosiasi Langka;
b. System.out.printlnJumlah data + jumlahbaris; c. System.out.printlnMinimum support : + minsup;
d. System.out.printlnMinimum confidence : + minconf; e. DBArea.append\nJumlah Data : + jumlahdb;
f. DBArea.append\nMinimum Support: + minsup; g. DBArea.append\nMinimum Confidence: + minconf + \n;
10. public void tes
Input : - Output : -
Algoritma : a. temp = new ArrayList;
b. temp1 = new ArrayList; c. temp2 = new ArrayList;
87
d. temp3 = new ArrayList; e. temp4 = new ArrayList;
f. largeitemset = new LargeItemset; g. ada = new ArrayList;
h. tampung = new ArrayList; i. isirule = new ArrayList;
j. subset = new Vector; k. remain = new ArrayList;
l. coba = new Vector; m. supsubset = new ArrayList;
n. Candidate1Itemsets; o. cetak;
p. Arima;
3.2.4.9 Detail Algoritma pada method di kelas Itemset