Rabu, 26 Juni 2019

SIAKAD Nilai Berdasarkan Nilai KMM By KNN



Data KMM

Hasil Pengujian
Tentukan Kelas yang hendak diuji dan nilai K-Value sebagai batasan klasifiaksi


HASIL ANALISA:




SBB kodenya :

<?php
$pro="simpan";
$tanggal=WKT(date("Y-m-d"));
?>
<script type="text/javascript">
function PRINT(){
win=window.open('jadwal/print.php','win','width=1000, height=400, menubar=0, scrollbars=1, resizable=0, location=0, toolbar=0, nip=0'); }
</script>
<script language="JavaScript">
function buka(url) {window.open(url, 'window_baru', 'width=800,height=600,left=320,top=100,resizable=1,scrollbars=1');}
</script>

<div id="accordion">
  <h4>Data Kelas Tahun Ajaran</h4>
  <div>
<?php
$k=2;

require_once"ta.php";

$sql="select `kode_kelas` from `$tbjadwal` order by kode_kelas desc";
$d=getField($conn,$sql);
$kode_kelas=$d["kode_kelas"];
$kelas=getKelas($conn,$kode_kelas);

if(isset($_POST["Proses"])){
$k=$_POST["k"];
$kode_kelas=$_POST["kode_kelas"];
$kelas=getKelas($conn,$kode_kelas);
}

?>
<form action="" method="post" enctype="multipart/form-data">
<table id="table">
<tr>
<td height="24"><label for="kode_kelas">Pilih Kelas</label>
<td>:<td colspan="2"><select name="kode_kelas" class="form-control" id="kode_kelas">
  <option><?php echo "$kelas ($kode_kelas)"?></option>
  <?php
  $sql="select * from `$tbkelas`  where kode_tahunajaran='$gkode'";
$arr=getData($conn,$sql);
foreach($arr as $d) {
$kode_kelas0=$d["kode_kelas"];
$nama_kelas=$d["nama_kelas"];
echo"<option value='$kode_kelas0' ";if($kode_kelas0==$kode_kelas){echo"selected";} echo">$nama_kelas ($kode_kelas0)</option>";
}
?>
</select></td>
</tr>


<tr>
<td height="24"><label for="k">Masukkan k Value</label>
<td>:<td colspan="2"><input name="k" class="form-control" type="text" id="k" value="<?php echo $k;?>" size="5" /></td>
</tr>
<tr>
<td>
<td>
<td colspan="2"> <input name="Proses" type="submit" id="Proses" value="Proses" />
<input name="kode_tahunajaran" type="hidden" id="kode_tahunajaran" value="<?php echo $gkode;?>" />
        <a href="?mnu=ranking"><input name="Batal" type="button" id="Batal" value="Batal" /></a>
</td></tr>
</table>
</form>
<hr>



<?php



if(isset($_POST["Proses"])){
$k=$_POST["k"];
$kode_kelas=$_POST["kode_kelas"];
$kelas=getKelas($conn,$kode_kelas);
}



$sql="select distinct(`kode_matapelajaran`) from `$tbjadwal` where  `kode_tahunajaran`='$gkode'  and `kode_kelas`='$kode_kelas' order by `id` desc";

$arr=getData($conn,$sql);
$i=0;
foreach($arr as $d) {
$kode_matapelajaran=$d["kode_matapelajaran"];
$ark[$i]=$kode_matapelajaran;
$arkkm[$i]=getKKM($conn,$kode_matapelajaran);
$i++;
}
$jmp=count($ark);


$sql="select distinct(`nis`) from `$tbpenempatan` where `kode_tahunajaran`='$gkode' and `kode_kelas`='$kode_kelas'";
$arr=getData($conn,$sql);
$i=0;
foreach($arr as $d) {
$nis=$d["nis"];
$arn[$i]=$nis;
$i++;
}
$jsiswa=count($arn);

$gab="<table border='1' width='100%'>";
$gab.="<tr colspan='#cccccc'><td><b>No<td><b>NIS<td><b>Nama Siswa";
for($j=0;$j<$jmp;$j++){
$gab.="<td><b>".getMataPelajaran($conn,$ark[$j]);
}
$gab.="</b></tr>";

for($i=0;$i<$jsiswa;$i++){
$no=$i+1;
$nis=$arn[$i];
$nama=getSiswa($conn,$nis);
$gab.="<tr><td>$no<td>$nis<td>$nama";
for($j=0;$j<$jmp;$j++){
$sql="select `kode_nilai` from `$tbnilai` where `nis`='$arn[$i]' and `kode_tahunajaran`='$gkode' ";
$d=getField($conn,$sql);
$kode_nilai=$d["kode_nilai"];
$bobot=getNilaiSiswa($conn,$kode_nilai,$ark[$i]);
$AR[$i][$j]=$bobot;
$gab.="<td>$bobot";
}
$gab.="</tr>";
}
$gab.="<tr ><td>#<td colspan='2'><b>KKM";
for($j=0;$j<$jmp;$j++){
$gab.="<td><b>".$arkkm[$j]."</b>";
}
$gab.="</tr>";
$gab.="</table>";


$gab2="<table border='1' width='100%'>";
$gab2.="<tr colspan='#cccccc'><td><b>No<td><b>NIS<td><b>Nama Siswa<td><b>Formula<td><b>EigenValue</tr>";

for($i=0;$i<$jsiswa;$i++){
$no=$i+1;
$V[$i]=0;
$S[$i]="";

for($j=0;$j<$jmp;$j++){
$b1=$AR[$i][$j];
$b2=$arkkm[$j];
$V[$i]+=pow(($b1-$b2),2);
$S[$i].="+ ($b1-$b2)<sup>2</sup>";
}//j

$S[$i]=substr($S[$i],2,strlen($S[$i]));
$nis=$arn[$i];
$nama=getSiswa($conn,$nis);
$V[$i]=round(sqrt($V[$i]),2);
$gab2.="<tr><td>$no<td><b>$nis<td><b>$nama<td>SQRT($S[$i])<td>$V[$i]</tr>";
}//i
$gab2.="</tr>";
$gab2.="</table>";


 $array_count = count($V);
        for($x = 0; $x < $array_count; $x++){
            for($a = 0 ;  $a < $array_count - 1 ; $a++){
                if($a < $array_count ){
                    if($V[$a] > $V[$a + 1] ){
                            swap($V, $a, $a+1);
swap($S, $a, $a+1);
swap($arn, $a, $a+1);
                    }
                }
            }
        }

$gab3="<table border='1' width='100%'>";
$gab3.="<tr colspan='#cccccc'><td><b>No<td><b>NIS<td><b>Nama Siswa<td><b>EigenValue<td><b>Ranking<td><b>k =$k</b></tr>";

for($i=0;$i<$jsiswa;$i++){
$no=$i+1;
$nis=$arn[$i];
$nama=getSiswa($conn,$nis);
$hs="Kelas Biasa";
if($no<=$k){$hs="Kelas Favorite";}
$gab3.="<tr><td>$no<td><b>$nis<td><b>$nama<td>$V[$i]</td><td><strong>$no<td>$hs</strong></tr>";
}//i
$gab3.="</tr>";
$gab3.="</table>";

?>

<h3>Data Nilai Siswa Kelas  <?php echo $kelas;?>: </h3
<br>
<?php echo $gab;?>

<hr>
<h3>K-Nearest Neighbor (K-NN)  <?php echo $kelas;?>: </h3
<br>
<?php echo $gab2;?>
<hr>
<h3>Pengurutan dan Filter k value KNN kelas  <?php echo $kelas;?>: </h3
<br>
<?php echo $gab3;?>


</div>






</div>


<?php

 function swap(&$arr, $a, $b) {
        $tmp = $arr[$a];
        $arr[$a] = $arr[$b];
        $arr[$b] = $tmp;
    }
function getNilaiSiswa($conn,$kode_nilai,$kode_matapelajaran){
$sql="select `bobot` from `tb_nilaidetail` where `kode_nilai`='$kode_nilai' and `kode_matapelajaran`='$kode_matapelajaran'";
$bobot=0;
if(getJum($conn,$sql)<1){
$bobot=0;
}
else{
$d=getField($conn,$sql);
$bobot=$d["bobot"];
}
return $bobot;
}

?>

<br><br><br>
<pre>
Algoritma Perhitungan KNN
Menentukan parameter K sebagai banyaknya jumlah tetangga terdekat dengan objek baru.
Menghitung jarak antar objek/data baru terhadap semua objek/data yan gtelah di training.
Urutkan hasil perhitungan tersebut.
Tentukan tetangga terdekat berdasarkan jarak minimum ke K.
Tentukan kategori dari tetangga terdekat dengan objek/data.
Gunakan kategori mayoritas sebagai klasifikasi objek/data baru.
</pre>



Minggu, 23 Juni 2019

APLIKASI SENTIMEN ANALISIS NAIVE BAYES + STEMMING


GRAFIK SEBARAN DATA TRAINING POSITIF DAN NEGATIF




Proses Input



 Kalkulasi Normalisasi Data Training


Perhitungan TFIDF dan Naive Bayes


OK teruji.............

Adapun sobat2 bisa pakai source code sbb:


<h1>Proses Naive Bayes</h1>
<?php
$inputkalimat="Materi yang disampaikan dengan baik dan mudah dipahami. Namun metodenya agak membuat ngantuk";
if(isset($_POST["Proses"])){
$inputkalimat=$_POST["inputkalimat"];
}
?>
<form id="form1" name="form1" method="post" action="">
 <strong> Tulis Kata:</strong><br />
  <label for="textarea"></label>
  <textarea name="inputkalimat" id="inputkalimat" cols="100" rows="5"><?php echo $inputkalimat;?></textarea><br />
  <input type="submit" name="Proses" id="Proses" value="Hitung Klasifikasi Menggunakan Stemming -> Naive Bayes" />
</form>
<?php

if(isset($_POST["Proses"])){
$kalimat=$_POST["inputkalimat"];

 require_once __DIR__ . '/vendor/autoload.php';
 $initos = new \Sastrawi\Stemmer\StemmerFactory();
 $bikinos = $initos->createStemmer();

$kalimat=strtolower($kalimat);
$stemming=$bikinos->stem($kalimat);
$stemmingnew=strtolower($stemming);

$ak=getStopNumber();
$ar=getStopWords();
$wordStop=$stemmingnew;
for($i=0;$i<count($ar);$i++){
 $wordStop =str_replace($ar[$i]." ","", $wordStop);
}

for($i=0;$i<count($ak);$i++){
 $wordStop =str_replace($ak[$i],"", $wordStop);
}
$stopword=str_replace("  "," ", $wordStop);

echo"<b>";
echo "kalimat=".$kalimat."<hr>";
echo "stemming=".$stemmingnew."<hr>";
echo "stopword=".$stopword."<hr>";
echo"</b>";

  //============================================
  $i=0;
  $tot=0;
  $sqlq="select distinct(kategori) from `$tbkategori` order by `kategori` asc";
$arrq=getData($conn,$sqlq);
foreach($arrq as $dq) {
$kategori=$dq["kategori"];
$nk=$dq["kategori"];

   $sql="select kategori from `$tbkategori` where kategori='$kategori' order by `kategori` asc";
  $jum=getJum($conn,$sql);

  $arKat[$i]=$kategori;
  $arIdKat[$i]=$kategori;
  $arJum[$i]=$jum;

  $tot+=$jum;
  $i++;
  }//foreach
  $p=$i;

  echo"<table border='1' width='60%'>";
  echo"<tr bgcolor='#bbbbbb'><td align='center'>No<td align='center'>Kategori<td>Jumlah</tr>";
  for($i=0;$i<$p;$i++){
  $no=$i+1;
  $kat=$arKat[$i];
  $jum=$arJum[$i];
  $color='#dddddd';
  if($i%2==0){$color='#eeeeee';}
  echo"<tr bgcolor='$color'><td>$no<td>$kat<td align='right'>$jum</tr>";
  }//for
  echo"</table>";
  echo"Total data=".$tot."<br>";


  $gab="";
  $sql="select stemming from `$tbkategori` order by `kategori` asc";
$arr=getData($conn,$sql);
foreach($arr as $d) {
$normalisasi=$d["stemming"];
if(strlen($normalisasi)>0){
$gab.=$normalisasi." ";
}
}
$ar0=explode(" ",$gab);

$ar=getUnik($ar0);
$N=count($ar);

  echo"<strong Tokenization</strong>";
  $no=0;
  echo"<table border='1' width='60%'>";
  echo"<tr bgcolor='#bbbbbb'><td align='center'>No<td align='center'>Token";
    for($i=0;$i<$p;$i++){
  $kat=$arKat[$i];
  echo"<td>".$kat;
  }
  echo"</tr>";
  for($j=0;$j<count($ar)-1;$j++){
  $no=$j+1;
  $color='#dddddd';
  if($no%2==0){$color='#eeeeee';}

  $KAL=$ar[$j];

  echo"<tr bgcolor='$color'><td>$no<td>$KAL";
   for($i=0;$i<$p;$i++){
$idk=$arIdKat[$i];
$kalimat=$KAL;

  $r=getHitung($conn,$idk,$kalimat);//rand(0,1);
  echo"<td>".$r;
  }
  echo"</tr>";
  }//for
  echo"</table>";


  $ark=explode(" ",$stopword);

 echo"<table border='1' width='60%'>";
 echo"<tr bgcolor='#bbbbbb'><td align='center'>No<td align='center'>Kategori</td>";
  for($j=0;$j<count($ark);$j++){
echo"<td>".$ark[$j];
}
echo"</tr>";

  $pan=$p;
  for($i=0;$i<$pan;$i++){
  $no=$i+1;
  $idk=$arIdKat[$i];
  $kat=$arKat[$i];
  $jum=$arJum[$i];
  $color='#dddddd';
  if($i%2==0){$color='#eeeeee';}

  $n=$tot;
  $p=$jum/$tot;
  $m=count($ark);

  echo"<tr bgcolor='$color'><td>$no<td>$kat</td>";
$totc=$p;
$stotc="$p x ";

  for($j=0;$j<$m;$j++){
  $kata=$ark[$j];
  $nc=getHitung($conn,$idk,$kata);

  $ajum[$i][$j]=$nc;
  $bob[$i][$j]=($nc+($m * $p))/($n+$m);
  $totc *=$bob[$i][$j];
  $stotc .=$bob[$i][$j]." x ";

echo"<td>"."($nc+($m * $p))/($n+$m)<br>=".$bob[$i][$j];
}
$arTotc[$i]=$totc;
$arSTotc[$i]=$stotc;

echo"</tr>";
 
  }//for
  echo"</table><br>";

  echo"Perhitungan Probabilitas";
 echo"<table border='1' width='100%'>";
 echo"<tr bgcolor='#bbbbbb'><td align='center'>No<td align='center'>Kategori</td><td width='60%'>Formulas<td>Total</tr>";
  for($i=0;$i<$pan;$i++){
  $no=$i+1;
  $kat=$arKat[$i];
  $color='#dddddd';
  if($i%2==0){$color='#eeeeee';}

  $no=$i+1;
  echo"<tr bgcolor='$color'>
  <td align='center'  valign='top'>$no
<td  valign='top' align='left'>$kat</td>
<td valign='top'>".$arSTotc[$i]."<td  valign='top'>".$arTotc[$i]."</tr>";
  }
echo"</table><br>";


  //bubblerost
        for($x = 0; $x < $pan; $x++){
            for($a = 0 ;  $a < $pan - 1 ; $a++){
                if($a < $pan ){
                    if($arTotc[$a] < $arTotc[$a + 1] ){
                            swap($arTotc, $a, $a+1);
swap($arSTotc, $a, $a+1);
  swap($arKat, $a, $a+1);
                    }
                }
            }
        }


   echo"Pengurutan Probabilitas";
 echo"<table border='1' width='100%'>";
 echo"<tr bgcolor='#bbbbbb'><td align='center'>No<td align='left'>Kategori</td><td width='60%'>Formulas<td>Total</tr>";
 $hs="";
  for($i=0;$i<$pan;$i++){
  $no=$i+1;
  $kat=$arKat[$i];
  $color='#dddddd';
  if($i%2==0){$color='#eeeeee';}
  if($i==0){$hs=$kat;}
  $no=$i+1;
  echo"<tr bgcolor='$color'>
  <td align='center'  valign='top'>$no
<td  valign='top' align='center'>$kat</td>
<td valign='top'>".$arSTotc[$i]."<td  valign='top'>".$arTotc[$i]."</tr>";
  }
echo"</table><br>";

echo"<font color='green' size='24'>Kategori: $hs</font>";
}//isset Proses



  ?>






PHP Code Moving Average


DATA LATIIH TRANKSAKSI SETIAP HARI


Proses Moving Average Penentuan parameter

Hasil Analisa perhitungan Moving Average:

Grafik Illustrasi Forecasting



Sorce Code:

    <link class="include" rel="stylesheet" type="text/css" href="lib/jquery.jqplot.min.css" />
    <link rel="stylesheet" type="text/css" href="lib/examples.min.css" />
    <link type="text/css" rel="stylesheet" href="lib/syntaxhighlighter/styles/shCoreDefault.min.css" />
    <link type="text/css" rel="stylesheet" href="lib/syntaxhighlighter/styles/shThemejqPlot.min.css" />
    <script class="include" type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 

<div id="page-inner">
  <div class="row">
    <div class="col-md-12">
<table width="100%">
<tr>
<td align='left'>
      <h2><a href="?mnu=prediksi3">Exponential Smoothing OUT</a></h2>
      <h5>Penghalusan Eksponensial : Ft = Ft – 1 + α (Dt-1 – Ft-1)</h5>
  <td align='right'>
      <h2><a href="?mnu=prediksi4">Moving Average OUT</a></h2>
      <h5>Rata-rata Bergerak : MA = (n1 + n2 + n3 + …) / n</h5>
  </table>
 
    </div>
  </div>
  <!-- /. ROW  -->
  <hr />
 <?php
 //require_once"jumlah.php";
 ?>
  <!-- /. ROW  -->


<h1>MA = (n1 + n2 + n3 + …) / n</h1>
 <pre>
Dimana :
Ft = Peramalan untuk periode yang akan datang
n = Jumlah periode peramalan moving average
At~1 = Data aktual satu periode sebelum peramalan
At~2 = Data aktual dua periode sebelum peramalan
At~3 = Data aktual tiga periode sebelum peramalan
At~n = Data aktual satu n sebelum peramalan

Jumlah ke-n harus disesuaikan dengan persoalan yang diminta.
Jika menggunakan moving average 3 tahunan, maka otomatis jumlah n dan data aktual akan berjumlah 3 pula.
</pre>

<?php
//https://prezi.com/cd7qrvhbdse6/metode-forecasting-exponential-smoothing/
//https://www.dounkey.com/2017/10/metode-rata-rata.html

$alpha=3;
$jumlah=10;
if(isset($_POST["Proses"])){
$id_bahan=strip_tags($_POST["id_bahan"]);
$alpha=strip_tags($_POST["alpha"]);
$jumlah=strip_tags($_POST["jumlah"]);
}
?>
<form action="" method="post" enctype="multipart/form-data">
<table width="511" class="table table-striped table-bordered table-hover">


<tr>
<td width="30%"><label for="id_bahan">Pilih Bahan Baku</label>
<td valign="top">:
<td colspan="2">
  <select name="id_bahan" id="id_bahan">
    <option value="">-- Pilih --</option>
    <?php
  $s="select * from `tb_bahan_baku`";
$q=getData($conn,$s);
foreach($q as $d){
$id_bahan0=$d["id_bahan"];
$nama_bahan=$d["nama_bahan"];
echo"<option value='$id_bahan0' ";if($id_bahan0==$id_bahan){echo"selected";} echo">$nama_bahan  |$id_bahan0</option>";
}
?>

  </select></td>
</tr>

<tr>
<th width="116">Masukkan Nilai Moving Average</label>
<th width="10" valign="top">:
<th width="370" colspan="2"><input name="alpha" type="text" id="alpha" value="<?php echo $alpha;?>" size="5" /></b>
</tr>

<tr>
<td><label for="jumlah">Tulis Jumlah Bulan Prediksi</label>
<td valign="top">:
<td colspan="2"><input name="jumlah" type="text" id="jumlah" value="<?php echo $jumlah;?>" size="5" /></td>
</tr>

<tr>
<td>
<td valign="top">
<td colspan="2">
<input name="Proses" type="submit" id="Proses" value="Proses" />
       <input name="Batal" type="reset" id="Batal" value="reset" />
</td></tr>
</table>
</form>


<?php
if(isset($_POST["Proses"])){
$id_bahan=strip_tags($_POST["id_bahan"]);
$alpha=strip_tags($_POST["alpha"]);
$jumlah=strip_tags($_POST["jumlah"]);

$jumbln=12;
$bln_awal=6;
$thn_awal=2018;
$judul_bln=array(1=> "Januari", "Februari", "Maret", "April", "Mei","Juni", "Juli", "Agustus", "September","Oktober", "November", "Desember");

for($i=0;$i<$jumbln;$i++){
if($bln_awal>12){$bln_awal=$bln_awal-12;$thn_awal=$thn_awal+1;}
if($bln_awal<10){$bln_awal="0".$bln_awal;}

$ar1[$i]=$thn_awal."-".$bln_awal."-01";
$ar2[$i]=$thn_awal."-".$bln_awal."-31";
$arB[$i]=$judul_bln[($bln_awal+0)]." ".$thn_awal;
//echo $arB[$i].":$ar1[$i] s/d $ar2[$i] <br>";
$bln_awal++;
}

$bahan=getBahan($conn,$id_bahan);
echo "<h2>$bahan ($id_bahan)</h2>";
$gab="<table border='1'>";
$gab.="<tr><td>No<td>Periode<td>Jumlah</td></tr>";
for($i=0;$i<$jumbln;$i++){
$no=$i+1;
$jum=getJumlah($conn,$ar1[$i],$ar2[$i],$id_bahan);
$arJum[$i]=$jum;
$gab.="<tr><td>$no<td>$arB[$i]<td>$jum</td></tr>";

}
$gab.="</table>";
echo $gab;

$jumbln=12;
$bln_awal=6;
$thn_awal=2018;
$MULAI=$alpha;
for($i=$MULAI;$i<$jumlah+$jumbln;$i++){

if($i>$jumbln){
$arJum[$i-1]=$jum;
}

if($bln_awal>12){$bln_awal=$bln_awal-12;$thn_awal=$thn_awal+1;}
if($bln_awal<10){$bln_awal="0".$bln_awal;}

$ar1[$i]=$thn_awal."-".$bln_awal."-01";
$ar2[$i]=$thn_awal."-".$bln_awal."-31";
$arB[$i]=$judul_bln[($bln_awal+0)]." ".$thn_awal;

$F1=0;//$arJum[$i];
$FS="";
for($j=1;$j<=$alpha;$j++){
$n=$i-$j;
$V=round($arJum[$n],2);
$F1+=$V;
$FS.="+$V ";
}

$jum=$F1/$alpha;
$arH[$i]=round($jum,2);
$arS[$i]="$FS / $alpha";
$bln_awal++;


}


echo "<h2>Prediksi $jumlah Bulan YAD Thd $bahan ($id_bahan)</h2>";
$gab="<table border='1'>";
$hasil="";
$gab.="<tr><td>No<td>Periode<td>Formula<td>Prediksi</td></tr>";
for($i=0;$i<$jumlah;$i++){
$no=$i+1;
$jum=$arH[$i];//getJumlah($conn,$ar1[$i],$ar2[$i],$id_bahan);
$jums=$arS[$i];
$gab.="<tr><td>$no<td>$arB[$i]<td>$jums<td>$jum</tr>";
$hasil.="[$no,$jum],";
}
$gab.="</table>";
echo $gab;
$hasil=substr($hasil,0,strlen($$hasil)-1);
?>


<h1><?php echo"Grafik  Forecasting $jumlah Bulan $bahan ($id_bahan)";?></h1>
<div id="chart1" style="width:1200px; height:400px"></div>

 
 
<?php

}
?>




</div>




<?php
function getJumlah($conn,$w1,$w2,$idb){// `id_bahan`='$idb' and
$sql="select sum(id_pengeluaran) as `jum` from `tb_pengeluaran` where tanggal between '$w1' and '$w2'";
$d=getField($conn,$sql);
$jum=$d["jum"];
return $jum;
}


?>




<script class="code" type="text/javascript">
    $(document).ready(function () {
        var s1 = [<?php echo $hasil;?>];
   
        plot1 = $.jqplot("chart1", [s1, s1], {
            animate: true,
            animateReplot: true,
            cursor: {
                show: true,
                zoom: true,
                looseZoom: true,
                showTooltip: false
            },
            series:[
                {
                    pointLabels: {
                        show: true
                    },
                    renderer: $.jqplot.BarRenderer,
                    showHighlight: false,
                    yaxis: 'y2axis',
                    rendererOptions: {
                        // Speed up the animation a little bit.
                        // This is a number of milliseconds. 
                        // Default for bar series is 3000. 
                        animation: {
                            speed: 2500
                        },
                        barWidth: 15,
                        barPadding: -15,
                        barMargin: 0,
                        highlightMouseOver: false
                    }
                },
                {
                    rendererOptions: {
                        // speed up the animation a little bit.
                        // This is a number of milliseconds.
                        // Default for a line series is 2500.
                        animation: {
                            speed: 2000
                        }
                    }
                }
            ],
            axesDefaults: {
                pad: 0
            },
            axes: {
                // These options will set up the x axis like a category axis.
                xaxis: {
                    tickInterval: 1,
                    drawMajorGridlines: false,
                    drawMinorGridlines: true,
                    drawMajorTickMarks: false,
                    rendererOptions: {
                    tickInset: 0.5,
                    minorTicks: 1
                }
                },
                yaxis: {
                    tickOptions: {
                        formatString: "%'d"
                    },
                    rendererOptions: {
                        forceTickAt0: true
                    }
                },
                y2axis: {
                    tickOptions: {
                        formatString: "%'d"
                    },
                    rendererOptions: {
                        // align the ticks on the y2 axis with the y axis.
                        alignTicks: true,
                        forceTickAt0: true
                    }
                }
            },
            highlighter: {
                show: true,
                showLabel: true,
                tooltipAxes: 'y',
                sizeAdjust: 7.5 , tooltipLocation : 'ne'
            }
        });
     
    });

</script>
<!-- End example scripts -->
    <script class="include" type="text/javascript" src="lib/jquery.jqplot.min.js"></script>
    <script type="text/javascript" src="lib/syntaxhighlighter/scripts/shCore.min.js"></script>
    <script type="text/javascript" src="lib/syntaxhighlighter/scripts/shBrushJScript.min.js"></script>
    <script type="text/javascript" src="lib/syntaxhighlighter/scripts/shBrushXml.min.js"></script>
  <script class="include" type="text/javascript" src="lib/plugins/jqplot.barRenderer.min.js"></script>
  <script class="include" type="text/javascript" src="lib/plugins/jqplot.highlighter.min.js"></script>
  <script class="include" type="text/javascript" src="lib/plugins/jqplot.cursor.min.js"></script>
  <script class="include" type="text/javascript" src="lib/plugins/jqplot.pointLabels.min.js"></script>


Konsep / Teori Perhitungannya ada di sini

PHP CODE Exponential Smootihing

DATA LATIH TRANSAKSI :




 HAsil Analisa Exponential Smoothing terhadap pembelian atau pengeluaran Barang

Grafik Illustrasi Analisa Exponential Smoothing terhadap pembelian atau pengeluaran Barang




Source Code:

        <link class="include" rel="stylesheet" type="text/css" href="lib/jquery.jqplot.min.css" />
    <link rel="stylesheet" type="text/css" href="lib/examples.min.css" />
    <link type="text/css" rel="stylesheet" href="lib/syntaxhighlighter/styles/shCoreDefault.min.css" />
    <link type="text/css" rel="stylesheet" href="lib/syntaxhighlighter/styles/shThemejqPlot.min.css" />
    <script class="include" type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 

<div id="page-inner">
  <div class="row">
    <div class="col-md-12">
<table width="100%">
<tr>
<td align='left'>
      <h2><a href="?mnu=prediksi3">Exponential Smoothing OUT</a></h2>
      <h5>Penghalusan Eksponensial : Ft = Ft – 1 + α (Dt-1 – Ft-1)</h5>
  <td align='right'>
      <h2><a href="?mnu=prediksi4">Moving Average OUT</a></h2>
      <h5>Rata-rata Bergerak : MA = (n1 + n2 + n3 + …) / n</h5>
  </table>
 
    </div>
  </div>
  <!-- /. ROW  -->


   <hr />
 <?php
 //require_once"jumlah.php";
 ?>



<h1>Ft+1 = αYt + (1 - α)Ft</h1>
 <pre>
Dimana :
Ft+1 = nilai peramalan untuk periode t+1
Yt = nilai sebenarnya untuk periode t+1
Ft = nilai peramalan untuk periode t
α = konstanta penghalusan (0 < α < 1)
</pre>

<?php
//https://prezi.com/cd7qrvhbdse6/metode-forecasting-exponential-smoothing/

$alpha=0.2;
$jumlah=10;
if(isset($_POST["Proses"])){
$id_bahan=strip_tags($_POST["id_bahan"]);
$alpha=strip_tags($_POST["alpha"]);
$jumlah=strip_tags($_POST["jumlah"]);
}
?>
<form action="" method="post" enctype="multipart/form-data">
<table width="511" class="table table-striped table-bordered table-hover">


<tr>
<td width="30%"><label for="id_bahan">Pilih Bahan Baku</label>
<td valign="top">:
<td colspan="2">
  <select name="id_bahan" id="id_bahan">
    <option value="">-- Pilih --</option>
    <?php
  $s="select * from `tb_bahan_baku`";
$q=getData($conn,$s);
foreach($q as $d){
$id_bahan0=$d["id_bahan"];
$nama_bahan=$d["nama_bahan"];
echo"<option value='$id_bahan0' ";if($id_bahan0==$id_bahan){echo"selected";} echo">$nama_bahan  |$id_bahan0</option>";
}
?>

  </select></td>
</tr>

<tr>
<th width="116">Masukkan Nilai α</label>
<th width="10" valign="top">:
<th width="370" colspan="2"><input name="alpha" type="text" id="alpha" value="<?php echo $alpha;?>" size="5" /></b>
</tr>

<tr>
<td><label for="jumlah">Tulis Jumlah Bulan Prediksi</label>
<td valign="top">:
<td colspan="2"><input name="jumlah" type="text" id="jumlah" value="<?php echo $jumlah;?>" size="5" /></td>
</tr>

<tr>
<td>
<td valign="top">
<td colspan="2">
<input name="Proses" type="submit" id="Proses" value="Proses" />
       <input name="Batal" type="reset" id="Batal" value="reset" />
</td></tr>
</table>
</form>


<?php
if(isset($_POST["Proses"])){
$id_bahan=strip_tags($_POST["id_bahan"]);
$alpha=strip_tags($_POST["alpha"]);
$jumlah=strip_tags($_POST["jumlah"]);

$jumbln=12;
$bln_awal=6;
$thn_awal=2018;
$judul_bln=array(1=> "Januari", "Februari", "Maret", "April", "Mei","Juni", "Juli", "Agustus", "September","Oktober", "November", "Desember");

for($i=0;$i<$jumbln;$i++){
if($bln_awal>12){$bln_awal=$bln_awal-12;$thn_awal=$thn_awal+1;}
if($bln_awal<10){$bln_awal="0".$bln_awal;}

$ar1[$i]=$thn_awal."-".$bln_awal."-01";
$ar2[$i]=$thn_awal."-".$bln_awal."-31";
$arB[$i]=$judul_bln[($bln_awal+0)]." ".$thn_awal;
//echo $arB[$i].":$ar1[$i] s/d $ar2[$i] <br>";
$bln_awal++;
}

$bahan=getBahan($conn,$id_bahan);
echo "<h2>$bahan ($id_bahan)</h2>";
$gab="<table border='1'>";
$gab.="<tr><td>No<td>Periode<td>Jumlah</td></tr>";
for($i=0;$i<$jumbln;$i++){
$no=$i+1;
$jum=getJumlah($conn,$ar1[$i],$ar2[$i],$id_bahan);
$arJum[$i]=$jum;
$gab.="<tr><td>$no<td>$arB[$i]<td>$jum</td></tr>";

}
$gab.="</table>";
echo $gab;

$jumbln=12;
$bln_awal=6;
$thn_awal=2018;
for($i=0;$i<$jumlah+$jumbln;$i++){
if($bln_awal>12){$bln_awal=$bln_awal-12;$thn_awal=$thn_awal+1;}
if($bln_awal<10){$bln_awal="0".$bln_awal;}

$ar1[$i]=$thn_awal."-".$bln_awal."-01";
$ar2[$i]=$thn_awal."-".$bln_awal."-31";
$arB[$i]=$judul_bln[($bln_awal+0)]." ".$thn_awal;

$F1=$arJum[$i];
if($i>0){$F1=$arH[$i-1];}
$jum=($alpha*$arJum[$i])+(1-$alpha)*$F1;
$arH[$i]=round($jum,2);
$arS[$i]="($alpha x $arJum[$i])+(1-$alpha) x $F1";
//echo $arB[$i].":$ar1[$i] s/d $ar2[$i] <br>";
$bln_awal++;
}


echo "<h2>Prediksi $jumlah Bulan YAD Thd $bahan ($id_bahan)</h2>";
$gab="<table border='1'>";
$hasil="";
$gab.="<tr><td>No<td>Periode<td>Formula<td>Prediksi</td></tr>";
for($i=0;$i<$jumlah;$i++){
$no=$i+1;
$jum=$arH[$i];//getJumlah($conn,$ar1[$i],$ar2[$i],$id_bahan);
$jums=$arS[$i];
$gab.="<tr><td>$no<td>$arB[$i]<td>$jums<td>$jum</tr>";
$hasil.="[$no,$jum],";
}
$gab.="</table>";
echo $gab;
$hasil=substr($hasil,0,strlen($$hasil)-1);
?>


<h1><?php echo"Grafik  Forecasting $jumlah Bulan $bahan ($id_bahan)";?></h1>
<div id="chart1" style="width:1200px; height:400px"></div>

 
 
<?php

}
?>




</div>




<?php
function getJumlah($conn,$w1,$w2,$idb){// `id_bahan`='$idb' and
$sql="select sum(id_pengeluaran) as `jum` from `tb_pengeluaran` where tanggal between '$w1' and '$w2'";
$d=getField($conn,$sql);
$jum=$d["jum"];
return $jum;
}


?>




<script class="code" type="text/javascript">
    $(document).ready(function () {
        var s1 = [<?php echo $hasil;?>];
   
        plot1 = $.jqplot("chart1", [s1, s1], {
            animate: true,
            animateReplot: true,
            cursor: {
                show: true,
                zoom: true,
                looseZoom: true,
                showTooltip: false
            },
            series:[
                {
                    pointLabels: {
                        show: true
                    },
                    renderer: $.jqplot.BarRenderer,
                    showHighlight: false,
                    yaxis: 'y2axis',
                    rendererOptions: {
                        // Speed up the animation a little bit.
                        // This is a number of milliseconds. 
                        // Default for bar series is 3000. 
                        animation: {
                            speed: 2500
                        },
                        barWidth: 15,
                        barPadding: -15,
                        barMargin: 0,
                        highlightMouseOver: false
                    }
                },
                {
                    rendererOptions: {
                        // speed up the animation a little bit.
                        // This is a number of milliseconds.
                        // Default for a line series is 2500.
                        animation: {
                            speed: 2000
                        }
                    }
                }
            ],
            axesDefaults: {
                pad: 0
            },
            axes: {
                // These options will set up the x axis like a category axis.
                xaxis: {
                    tickInterval: 1,
                    drawMajorGridlines: false,
                    drawMinorGridlines: true,
                    drawMajorTickMarks: false,
                    rendererOptions: {
                    tickInset: 0.5,
                    minorTicks: 1
                }
                },
                yaxis: {
                    tickOptions: {
                        formatString: "%'d"
                    },
                    rendererOptions: {
                        forceTickAt0: true
                    }
                },
                y2axis: {
                    tickOptions: {
                        formatString: "%'d"
                    },
                    rendererOptions: {
                        // align the ticks on the y2 axis with the y axis.
                        alignTicks: true,
                        forceTickAt0: true
                    }
                }
            },
            highlighter: {
                show: true,
                showLabel: true,
                tooltipAxes: 'y',
                sizeAdjust: 7.5 , tooltipLocation : 'ne'
            }
        });
     
    });

</script>
<!-- End example scripts -->
    <script class="include" type="text/javascript" src="lib/jquery.jqplot.min.js"></script>
    <script type="text/javascript" src="lib/syntaxhighlighter/scripts/shCore.min.js"></script>
    <script type="text/javascript" src="lib/syntaxhighlighter/scripts/shBrushJScript.min.js"></script>
    <script type="text/javascript" src="lib/syntaxhighlighter/scripts/shBrushXml.min.js"></script>
  <script class="include" type="text/javascript" src="lib/plugins/jqplot.barRenderer.min.js"></script>
  <script class="include" type="text/javascript" src="lib/plugins/jqplot.highlighter.min.js"></script>
  <script class="include" type="text/javascript" src="lib/plugins/jqplot.cursor.min.js"></script>
  <script class="include" type="text/javascript" src="lib/plugins/jqplot.pointLabels.min.js"></script>


Teori Perhitungannya ada disini


Jumat, 21 Juni 2019

PHP CODE NAIVE BAYES BEASISWA





<script type="text/javascript">
function PRINTME(){
win=window.open('printme.php','win','width=1000, height=400, menubar=0, scrollbars=1, resizable=0, location=0, toolbar=0, pilih3=0'); }
</script>

<div id="accordion">
  <h3>Info Data Pengujian</h3>
  <div>

<?php
$id_pendaftar=$_GET["id"];
$sql="select * from `$tbpendaftar` where `id_pendaftar`='$id_pendaftar'";
$d=getField($conn,$sql);
$id_pendaftar=$d["id_pendaftar"];
$nama_pendaftar=$d["nama_pendaftar"];
$tempat_lahir=$d["tempat_lahir"];
$tgl_lahir=WKT($d["tgl_lahir"]);
$alamat=$d["alamat"];
$no_tlpa=$d["no_tlpa"];
$no_tlpo=$d["no_tlpo"];
$ipk=$d["ipk"];
$prestasi=$d["prestasi"];
$nama_ortu=$d["nama_ortu"];
$penghasilan=$d["penghasilan"];
$jumlah_tanggungan=$d["jumlah_tanggungan"];
$organisasi=$d["organisasi"];

$id_periode=$d["id_periode"];
$upload_khs=$d["upload_khs"];
$upload_khs0=$d["upload_khs"];
$upload_kk=$d["upload_kk"];
$upload_kk0=$d["upload_kk"];
$upload_prestasi=$d["upload_prestasi"]; //tambahin kolom di db
$upload_prestasi0=$d["upload_prestasi"]; //tambahin kolom di db
$username=$d["username"];
$password=$d["password"];


$v1=($ipk);
$v2=($prestasi);
$v3=($penghasilan);
$v4=($jumlah_tanggungan);
$v5=($organisasi);

$k1=getV1($ipk);
$k2=getV2($prestasi);
$k3=getV3($penghasilan);
$k4=getV4($jumlah_tanggungan);
$k5=getV5($organisasi);

$sql="select * from `$tbperiode` where `id_periode`='$id_periode'";
$d=getField($conn,$sql);
$gid_periode=$d["id_periode"];
$gnama_periode=$d["nama_periode"];
$gdeskripsi=$d["deskripsi"];
$gstatus=$d["status"];
$gketerangan=$d["keterangan"];


?>


<div id="accordion">
  <h3>Input Data Pendaftar</h3>
  <div>


<table width="60%">
<tr>
<td width="145" ><label for="nama_periode">Nama Periode</label><td width="30">:
<td width="194" colspan="2"><?php echo $gnama_periode;?></td>
</tr>

<tr>
<td ><label for="deskripsi">Deskripsi</label><td>:<td colspan="2"><?php echo "$gdeskripsi";?>
</td>
</tr>

<tr>
<td colspan="4"><hr>
</tr>

<tr>
<th width="226" ><label for="id_pendaftar">ID Pendaftar</label>
<th width="10">:
<th width="336" colspan="2"><b><?php echo $id_pendaftar;?></b>
</tr>

<tr>
<td ><label for="nama_pendaftar">Nama Pendaftar</label>
<td>:
<td colspan="2"><?php echo $nama_pendaftar;?></td>
</tr>

<tr>
<td ><label for="tempat_lahir">Tempat Lahir</label>
<td>:<td colspan="2"><?php echo $tempat_lahir;?>
</td>
</tr>


<tr>
<td ><label for="tgl_lahir">Tanggal Lahir</label>
<td>:<td colspan="2"><?php echo $tgl_lahir;?>
</td>
</tr>


<tr>
<td ><label for="alamat">Alamat</label>
<td>:<td colspan="2"><?php echo $alamat;?>
</td>
</tr>


<tr>
<td ><label for="no_tlpa">No Telepon Anak</label>
<td>:<td colspan="2"><?php echo $no_tlpa;?>
</td>
</tr>

<tr>
<td ><label for="no_tlpo">No Telepon Orang Tua</label>
<td>:<td colspan="2"><?php echo $no_tlpo;?>
</td>
</tr>

<tr>
<td ><label for="ipk">IPK</label>
<td>:
<td colspan="2"><?php echo $ipk;?></td>
</tr>


<tr>
<td ><label for="prestasi">Prestasi</label>
<td>:
<td colspan="2"><?php echo $prestasi;?></td>
</tr>


<tr>
<td ><label for="nama_ortu">Nama Orang Tua</label>
<td>:
<td colspan="2"><?php echo $nama_ortu;?></td>
</tr>



<tr>
<td ><label for="penghasilan">Penghasilan</label>
<td>:
<td colspan="2"><?php echo $penghasilan;?></td>
</tr>


<tr>
<td ><label for="jumlah_tanggungan">Jumlah Tanggungan</label>
<td>:
<td colspan="2"><?php echo $jumlah_tanggungan;?></td>
</tr>

<tr>
<td ><label for="jumlah_tanggungan">Prestasi</label>
<td>:
<td colspan="2"><?php echo $prestasi;?></td>
</tr>


<tr>
  <td height="47"><strong>Dokumen
    </strong>
  <td>:<td colspan="2">
  <?php
  echo"<a href='downloadget.php?file=$upload_khs'>KHS</a> |<a href='downloadget.php?file=$upload_kk'>KK</a> | <a href='downloadget.php?file=$upload_prestasi'>PRESTASI</a> |";
  ?>
  </td>
</tr>



</table>

<hr>

<?php


$sql="select distinct(penilaian) from `tbl_datalatih`  order by `penilaian` asc";
$arr=getData($conn,$sql);
$i=0;
foreach($arr as $d) {
$penilaian=$d["penilaian"];
$ik[$i]=$penilaian;
$nhasil[$i]=$penilaian;
$i++;
}

$jumK1=getOut($conn,$ik[0]);
$jumK2=getOut($conn,$ik[1]);
$jumK3=getOut($conn,$ik[2]);

$totK=$jumK1+$jumK2+$jumK3;

$jumG1A=getKK($conn,'n1',$k1,$ik[0]);
$jumG1B=getKK($conn,'n1',$k1,$ik[1]);
$jumG1C=getKK($conn,'n1',$k1,$ik[2]);

$jumG2A=getKK($conn,'n2',$k2,$ik[0]);
$jumG2B=getKK($conn,'n2',$k2,$ik[1]);
$jumG2C=getKK($conn,'n2',$k2,$ik[2]);

$jumG3A=getKK($conn,'n3',$k3,$ik[0]);
$jumG3B=getKK($conn,'n3',$k3,$ik[1]);
$jumG3C=getKK($conn,'n3',$k3,$ik[2]);

$jumG4A=getKK($conn,'n4',$k4,$ik[0]);
$jumG4B=getKK($conn,'n4',$k4,$ik[1]);
$jumG4C=getKK($conn,'n4',$k4,$ik[2]);

$jumG5A=getKK($conn,'n5',$k5,$ik[0]);
$jumG5B=getKK($conn,'n5',$k5,$ik[1]);
$jumG5C=getKK($conn,'n5',$k5,$ik[2]);



$HA=($jumK1/$totK)*($jumG1A/$jumK1)*($jumG2A/$jumK1)*($jumG3A/$jumK1)*($jumG4A/$jumK1)*($jumG5A/$jumK1);
$HB=($jumK2/$totK)*($jumG1B/$jumK2)*($jumG2B/$jumK2)*($jumG3B/$jumK2)*($jumG4B/$jumK2)*($jumG5B/$jumK2);
$HC=($jumK3/$totK)*($jumG1C/$jumK3)*($jumG2C/$jumK3)*($jumG3C/$jumK3)*($jumG4C/$jumK3)*($jumG5C/$jumK3);

$SHA="($jumK1/$totK) x ($jumG1A/$jumK1) x ($jumG2A/$jumK1) x ($jumG3A/$jumK1) x ($jumG4A/$jumK1) x ($jumG5A/$jumK1) ";
$SHB="($jumK2/$totK) x ($jumG1B/$jumK2) x ($jumG2B/$jumK2) x ($jumG3B/$jumK2) x ($jumG4B/$jumK2) x ($jumG5B/$jumK2) ";
$SHC="($jumK3/$totK) x ($jumG1C/$jumK3) x ($jumG2C/$jumK3) x ($jumG3C/$jumK3) x ($jumG4C/$jumK3) x ($jumG5C/$jumK3) ";



$max=$HA;
$smax=$SHA;
$index=2;
if($HA>=$HB && $HA>=$HC ){
$max=$HA;
$smax=$SHA;
$index=0;
}
else if($HB>=$HA && $HB>=$HB ){
$max=$HB;
$smax=$SHB;
$index=1;
}
else if($HC>=$HA && $HC>=$HB ){
$max=$HC;
$smax=$SHC;
$index=2;
}
$nout=$nhasil[$index];
$iout=$ik[$index];

$gab="<h3>Perhitungan</h3>";
$gab.= "<b>$nhasil[0] => $SHA =$HA</b><br>";
$gab.= "<b>$nhasil[1] => $SHB =$HB</b><br>";
$gab.= "<b>$nhasil[2] => $SHC =$HC</b><br>";


$gab2= "
<table><tr>
<td><b>Analisa  Perhitungan Naive Bayes Tertinggi Adalah : $nout </b>
<br>Dengan Nilai Bobot: $max
<td>
<img src='ypathicon/print.png' width='20' height='20' title='PRINT' OnClick='PRINTME()'>
</tr>
</table>
";

$gab22= "
<table><tr>
<td><b>Analisa  Perhitungan Naive Bayes Tertinggi Adalah : $nout </b>
<br>Dengan Nilai Bobot: $max
</tr>
</table>
";
$rekapitulasi=  "$nhasil[0] => $SHA =$HA<br>";
$rekapitulasi.= "$nhasil[1] => $SHB =$HB<br>";
$rekapitulasi.= "$nhasil[2] => $SHC =$HC<br>";
$rekapitulasi.="Nilai Tertinggi Adalah : $nout dengan Nilai Bobot: $max";

$gab0="<h1>Analisa Penerimaan Beasiswa</h1>
NIM : $nim<br>
Nama Mahasiswa: $nm<br>
<b>IPK:</b> $v1 ($k1)<br>
<b>Prestasi:</b> $v1 ($k2)<br>
<b>Penghasilan:</b> $v1 ($k3)<br>
<b>Jumlah Tanggungan:</b> $v1 ($k4)<br>
<b>Organisasi:</b> $v1 ($k5)<br>";

$_SESSION["gab"]=$gab0;

//echo $gab0;
echo $gab;
echo $gab2;
$_SESSION["gab0"]=$gab0;
$_SESSION["gab"]=$gab;
$_SESSION["gab2"]=$gab22."<hr>Analisa Kepuasan terhadap Beasiswa
 $nm Adalah : $nout dengan Nilai Bobot: $max";


$penilaian=$iout;
$keterangan_pengujian=$rekapitulasi;

$sql="delete from `$tbhasil` where `id_pendaftar`='$id_pendaftar'";
$hapus=process($conn,$sql);


$sql=" INSERT INTO `$tbhasil` (
`id_hasil` ,
`id_pendaftar` ,
`id_periode` ,
`rekapitulasi` ,
`penilaian` ,
`status` ,
`keterangan` 

) VALUES (
'',
'$id_pendaftar',
'$id_periode',
'$rekapitulasi',
'$penilaian',
'Proses',
'$max'
)";

$simpan=process($conn,$sql);

?>
</div>


<?php


function getKK($conn,$kolom,$data,$kat){
  $sql="select `id_datalatih` from `tbl_datalatih` where `$kolom`='$data' and `penilaian`='$kat'";
  $jum=getJum($conn,$sql);
  return $jum;
}

function getOut($conn,$kat){
  $sql="select `id_datalatih` from `tbl_datalatih` where `penilaian`='$kat'";
  $jum=getJum($conn,$sql);
  return $jum;
}



?>

Normalisasi:

 function getV1($v){
$r="Sangat Kurang";
if($v>3.5){$r="Istimewa";}
else if($v>3.0){$r="Baik";}
else if($v>2.5){$r="Cukup";}
else if($v>2){$r="Kurang";}
return $r;
 }
  function getV2($v){
return $v;
 }

  function getV3($v){
$r="Sangat Kurang";
if($v>30000000){$r="Sangat Kaya";}
else if($v>10000000){$r="Kaya";}
else if($v>3000000){$r="Cukup";}
else if($v>1000000){$r="Kurang";}
return $r;
 }

 function getV4($v){
$r="Sedikit";
if($v>5){$r="Sangat Banyak";}
else if($v>3){$r="Banyak";}
else if($v>1){$r="Cukup Banyak";}
return $r;
 }

function getV5($org){
$ar=explode(",",$org);
$v=count($ar);
$r="Tidak";
if($v>5){$r="Sangat Banyak";}
else if($v>3){$r="Banyak";}
else if($v>0){$r="Sedikit";}
return $r;
 }

ADAPUN TABELNYA DALAH SBB:


dan contoh datalatinya adalah sbb:


PHP CODE SENTIMEN ANALISIS TFIDF

Menggunakan Kosnep TF IDF  SASTRAWI




<style>
#table {
    font-family: "Trebuchet MS", Arial, Helvetica, sans-serif;
    border-collapse: collapse;
    width: 100%;
background-color:#ddd;

}

#table td, #table th {
    border: 1px solid #696969;
    padding: 8px;
}



#table th {
padding-top: 12px;
    padding-bottom: 12px;
    text-align: left;
    background-color: #A9A9A9;
    color: white;
}
</style>

    <link rel="stylesheet" href="jsacor/jquery-ui.css">
    <link rel="stylesheet" href="resources/demos/style.css">
    <script src="jsacor/jquery-1.12.4.js"></script>
    <script src="jsacor/jquery-ui.js"></script>
    <script>
    $( function() {
    $( "#accordion" ).accordion({
    collapsible: true
    });
    } );
    </script>


<?php

$id_pengujian=$_GET["id"];
$sql="select * from `$tbpengujian` where `id_pengujian`='$id_pengujian'";
$d=getField($conn,$sql);
$id_pengujian=$d["id_pengujian"];
$tgl=$d["tgl"];
$jam=$d["jam"];
$komentar0=$d["komentar"];
$penilaian=$d["penilaian"];
$keterangan=$d["keterangan"];
$komentar=getNorm($komentar0);
$judul=$komentar;
?>


<div id="accordion">
  <h4>Info Data Pengujian</h4>
  <div>
<table width="517">
        <tr>
          <td width="166" ><label for="id_pengujian">Id Pengujian</label>
          <td width="19">:
          <td width="397" colspan="2"><b><?php echo $id_pengujian;?></b>
        </tr>
        <tr>
          <td ><label for="komentar0">Komentar</label>
          <td>:
          <td><?php echo $komentar0;?></td>
        </tr>

  <tr>
          <td ><label for="komentar">Stemming</label>
          <td>:
          <td><?php echo $komentar;?></td>
        </tr>
    <tr>
<td><label for="penilaian">Kategori</label>
<td>:<td colspan="2"><?php echo $kategori;?>
</td></tr>
        <tr>
          <td height="24"><label for="keterangan">Keterangan</label>
        <td>:<td colspan="2"><?php echo $keterangan;?></td></tr>
</table>

</div>

<?php
require_once __DIR__ . '/vendor/autoload.php';

error_reporting(0);
$initos = new \Sastrawi\Stemmer\StemmerFactory();
$bikinos = $initos->createStemmer();
$stemming=$bikinos->stem($judul);
$stemmingnew=strtolower($stemming);

$ak=getStopNumber();
$ar=getStopWords();
$wordStop=$stemmingnew;
for($i=0;$i<count($ar);$i++){
 $wordStop =str_replace($ar[$i]." ","", $wordStop);
}

for($i=0;$i<count($ak);$i++){
 $wordStop =str_replace($ak[$i],"", $wordStop);
}
$juduluji=str_replace("  "," ", $wordStop);
//=====================================================
 $stemming=$juduluji;
 $arAsli=explode(".",$stemming);
 $jumk=count($arAsli);

 $AR=explode(" ",$stemming);
 $AR=array_unique($AR);

$m=0;
for($i=0;$i<count($AR);$i++){
 if(strlen($AR[$i])>1){
  $arUnix[$m]=$AR[$i];
  $m++;
}
 }
 //======================================



 $sql="select * from `$tbkategori`  order by `id_kategori` asc limit 0,3";
$arr=getData($conn,$sql);
$i=0;
$arStem[0]=$stemming;
$gabungan=$stemming." ";
foreach($arr as $d) {
$id_kategori0=$d["id_kategori"];
$kalimat=$d["stemming"];
$kalimat0=$d["stemming"];
$kategori0=$d["kategori"];

$arKode[$i]=$id_kategori0;
$arKat[$i]=$d["kategori"];


$arAslidoc[$i]=$kalimat0;

//==================

$stemming2=$bikinos->stem($kalimat0);
$stemmingnew2=strtolower($stemming2);
$wordStop2=$stemmingnew2;
for($y=0;$y<count($ar);$y++){
$wordStop2 =str_replace($ar[$y]." ","", $wordStop2);
}

for($y=0;$y<count($ak);$y++){
$wordStop2 =str_replace($ak[$y],"", $wordStop2);
}
$kalimatfilter=str_replace("  "," ", $wordStop2);

//==================
$gabungan.=$kalimatfilter." ";
$arStem[$i+1]=$kalimatfilter;
$arDoc[$i]=$kalimatfilter;
$arKe[$i]="Data ke-".($i+1);
$TOT[$i]=0;
$i++;
}
$jumk=$i;
 //======================================


 $arAsli=explode(" ",$gabungan);
  $arUnix0=array_unique($arAsli);

  $ii=0;
  for($i=0;$i<count($arUnix0);$i++){
  if($arUnix0[$i]==""){}
  else{
  $arUnix[$ii]=$arUnix0[$i];
  $ii++;
}
  }

 $jumb=count($arUnix);

echo"<table width='300%' border='1'>";
echo"<tr><td>Kata";
echo"<td>Q";
 for($i=0;$i<$jumk;$i++){
  $u=$i+1;
  echo"<td>D".$u;
 }
 echo"<td>df";
 echo"<td>IDF";
 echo"<td>QDF";
 for($i=0;$i<$jumk;$i++){
  $u=$i+1;
  echo"<td>QD".$u;
 }

  for($i=0;$i<$jumk;$i++){
  $u=$i+1;
  echo"<td>QDFD".$u;
 }

echo"<td>Q<sup>2</sup>";
  for($i=0;$i<$jumk;$i++){
  $u=$i+1;
  echo"<td>D<sup>2</sup>".$u;
 }



echo"</tr>";

 $bar=count($arUnix);
 for($i=0;$i<$bar;$i++){
  $kata=$arUnix[$i];
  $hitung=0;
 echo"<tr><td>".$kata."</td>";
 $jumada=0;

   for($j=0;$j<$jumk+1;$j++){
    $ada=getHit($kata,$arStem[$j]);
    $M[$i][$j]=$ada;
    if($ada>0){
$jumada++;
}
echo"<td>".$ada;
   }
 // $log=log($jumk+1,10)/$jumada;
  $log=log(($jumk)/$jumada,10);
 $log=abs($log);
 echo"<td>$jumada</td>";//idf
 echo"<td>log($jumk/$jumada)=$log";

   for($j=0;$j<$jumk+1;$j++){
$N[$i][$j]=$M[$i][$j] * $log;
$N2[$i][$j]=pow($N[$i][$j],2);

$TOT[$j]=$TOT[$j]+$N[$i][$j];
echo "<td>".$N[$i][$j];
   }
 
  for($j=1;$j<$jumk+1;$j++){
    $NN[$i][$j-1]=$N[$i][0] * $N[$i][$j];
    echo "<td>".$NN[$i][$j-1];
   }


  for($j=0;$j<$jumk+1;$j++){
    echo "<td>".$N2[$i][$j];
   }
 
 echo"</tr>";
 }//for i


   for($j=0;$j<$jumk;$j++){//kolom
  $TOT1[$j]=0;
  for($k=0;$k<$bar;$k++){//baris
    $TOT1[$j]+=$NN[$k][$j];
}
   }

  for($j=0;$j<$jumk+1;$j++){
$TOT2[$j]=0;
for($k=0;$k<$bar;$k++){//baris
$TOT2[$j]+=$N2[$k][$j];
}
   }
 
//------------------------------------
echo"<tr><td>Kata";
echo"<td>Q";
 for($i=0;$i<$jumk;$i++){
  $u=$i+1;
  echo"<td>D".$u;
 }
 echo"<td>df";
 echo"<td>IDF";
 echo"<td>QDF";
 for($i=0;$i<$jumk;$i++){
  $u=$i+1;
  echo"<td>QD".$u;
 }

  for($i=0;$i<$jumk;$i++){
  echo"<td>".$TOT1[$i];
 }

  for($i=0;$i<$jumk+1;$i++){
  echo"<td>".$TOT2[$i];
 }



echo"</tr>";

echo"</table>";

?>


</div>


</div>





Mencari Tanggal Terakhir Suatu Bulan

  $a_date = "$tahun-$bulan-01"; $lastdate= date('t',strtotime($a_date));//Y-m-t <?php require_once"koneksivar.php&...