Você está na página 1de 3

//package knearestneighbor;

//import java.awt.event.ActionListener;
//import java.io.File;
//import java.io.FileInputStream;
//import java.io.FileNotFoundException;
//import java.io.FileOutputStream;
//import java.io.IOException;
//import java.util.ArrayList;
//import java.util.Collections;
//import org.apache.poi.ss.usermodel.Cell;
//import org.apache.poi.ss.usermodel.Row;
//
//import org.apache.poi.xssf.usermodel.XSSFSheet;
//import org.apache.poi.xssf.usermodel.XSSFWorkbook;
//
//
//
///**
// *
// * @author Hendy
// */
//public class KNearestNeighbor {
//
// public static void main(String[] args) throws IOException {
// XSSFWorkbook excel = new XSSFWorkbook(new FileInputStream(new
File("D:\\kNearestNeighbor\\src\\knearestneighbor\\Dataset Tugas 3 AI
1718.xlsx")));
// XSSFSheet sheetTrain = excel.getSheetAt(0);
// XSSFSheet sheetTest = excel.getSheetAt(1);
//
// ArrayList<ArrayList<Double>> dataTest = new ArrayList<>();
// ArrayList<ArrayList<Double>> dataTrain = new ArrayList<>();
// ArrayList<ArrayList<Double>> akurasiDataTest = new ArrayList<>();
// ArrayList<ArrayList<Double>> akurasiDataTrain = new ArrayList<>();
// ArrayList<ArrayList<Double>> akurasiDataTrain2 = new ArrayList<>();
//Menampung arrayList sementara dari Data Train
////
// for (int i = 1; i < sheetTrain.getLastRowNum()+1; i++) { //Menambahkan
Sheet Excel kedalam ArrayList
// Row row = sheetTrain.getRow(i);
// dataTrain.add(new ArrayList<>());
// dataTrain.get(i-1).add(row.getCell(1).getNumericCellValue()); //Like
// dataTrain.get(i-1).add(row.getCell(2).getNumericCellValue());
//Provokasi
// dataTrain.get(i-1).add(row.getCell(3).getNumericCellValue());
//Komentar
// dataTrain.get(i-1).add(row.getCell(4).getNumericCellValue()); //Emosi
// dataTrain.get(i-1).add(row.getCell(5).getNumericCellValue()); //Hoax
// dataTrain.get(i-1).add(150.0); //Index
//
// akurasiDataTrain2.add(new ArrayList<>());
//
// akurasiDataTrain2.get(i-1).add(row.getCell(1).getNumericCellValue());
// akurasiDataTrain2.get(i-1).add(row.getCell(2).getNumericCellValue());
// akurasiDataTrain2.get(i-1).add(row.getCell(3).getNumericCellValue());
// akurasiDataTrain2.get(i-1).add(row.getCell(4).getNumericCellValue());
// akurasiDataTrain2.get(i-1).add(row.getCell(5).getNumericCellValue());
// }
// akurasiDataTrain=dataTrain;
//
// for(int i=1;i<sheetTest.getLastRowNum()+1;i++){
// Row row = sheetTest.getRow(i);
// dataTest.add(new ArrayList());
// dataTest.get(i-1).add(row.getCell(1).getNumericCellValue());
// dataTest.get(i-1).add(row.getCell(2).getNumericCellValue());
// dataTest.get(i-1).add(row.getCell(3).getNumericCellValue());
// dataTest.get(i-1).add(row.getCell(4).getNumericCellValue());
// dataTest.get(i-1).add(2d);
// }
// akurasiDataTest=dataTest;
////
//// int maxK=0;
//// double max=0;
//// int n =3800;
////// for(int k=8;k<9;k++){
//// for(int i=n;i<sheetTrain.getLastRowNum();i++){
//// for(int j=0;j<n;j++){
//// akurasiDataTrain.get(j).set(5,
rumus(dataTrain.get(i).get(0),dataTrain.get(j).get(0),
////
dataTrain.get(i).get(1),dataTrain.get(j).get(1),dataTrain.get(i).get(2),dataTrain.g
et(j).get(2),
//// dataTrain.get(i).get(3),dataTrain.get(j).get(3)));
//// }
////
//// Collections.sort(akurasiDataTrain, (ArrayList<Double>
o1,ArrayList<Double>o2) -> o1.get(5).compareTo(o2.get(5)));
////
//// int count0=0;
//// int count1=0;
//// for(int j=0;j<8;j++){
//// if(akurasiDataTrain.get(j).get(4)==0){
//// count0++;
//// }else count1++;
//// }
////
//// if(count1>count0){
//// dataTrain.get(i).set(4, 1d);
//// }else dataTrain.get(i).set(4, 0d);
////
//// }
//// double Akurasi=0d;
//// for(int i =n;i<4000;i++){
////// System.out.println(dataTrain.get(i).get(4));
//// if(dataTrain.get(i).get(4).equals(akurasiDataTrain2.get(i).get(4)))
{
//// Akurasi++;
//// }
//// }
//// System.out.println("Akurasi: "+((Akurasi/(4000-n))*100)+"%");
//// }
// for(int i =0;i<1000;i++){
// for(int j=0;j<4000;j++){
// dataTrain.get(j).set(5,
rumus(dataTest.get(i).get(0),dataTrain.get(j).get(0),
//
dataTrain.get(j).get(1),dataTest.get(i).get(1),dataTest.get(i).get(2),dataTrain.get
(j).get(2),
// dataTrain.get(j).get(3),dataTest.get(i).get(3)));
// }
// Collections.sort(dataTrain, (ArrayList<Double>
o1,ArrayList<Double>o2) -> o1.get(5).compareTo(o2.get(5)));
//
// int count0=0,count1=0;
// for(int j=0;j<8;j++){
// if(dataTrain.get(j).get(4)==0){
// count0++;
// }else count1++;
// }
// if(count1>count0){
// dataTest.get(i).set(4, 1d);
// }else dataTest.get(i).set(4, 0d);
//
// }
//
// for(int i=0;i<1000;i++){
// Row row = sheetTest.getRow(i+1);
// Cell cell = row.createCell(5);
// cell.setCellValue(dataTest.get(i).get(4));
// }
//
// try(FileOutputStream file = new
FileOutputStream("D:\\kNearestNeighbor\\src\\knearestneighbor\\Dataset Tugas 3 AI
1718.xlsx")){
// excel.write(file);
// }
//
//
// }
//
// static double rumus(double testLike,double trainLike,double testProv,double
trainProv,
// double testKomen,double trainKomen,double
testEmosi,double trainEmosi){
// return Math.sqrt(Math.pow(testLike-trainLike, 2)+Math.pow(testProv-
trainProv, 2)+
// Math.pow(testEmosi-trainEmosi, 2)+Math.pow(testKomen-
trainKomen, 2));
//
// }
//}
//
////}