163 lines
3.9 KiB
PHP
Executable File
163 lines
3.9 KiB
PHP
Executable File
<?php
|
|
// Este script insere em resultados.csv as notas preditas
|
|
// Diretórios de entrada
|
|
|
|
$diretorioentrada1 = "indexados/";
|
|
$diretorioentrada2 = "arquivospredicao/";
|
|
|
|
$ponteiro1 = opendir($diretorioentrada1);
|
|
|
|
// Para cada subdiretorio do diretorio de entrada
|
|
|
|
while (($nomequestao = readdir($ponteiro1)))
|
|
{
|
|
|
|
if (($nomequestao<>".") && ($nomequestao<>".."))
|
|
{
|
|
$rcsv= $diretorioentrada1.$nomequestao."/resultado.csv";
|
|
$npontuadas = $diretorioentrada2.$nomequestao."/treinomodelo.csv";
|
|
$npreditas= $diretorioentrada2.$nomequestao."/notastestepreditas.csv";
|
|
|
|
|
|
|
|
|
|
if ( (file_exists($rcsv)) && (file_exists($npontuadas)) && (file_exists($npreditas)) )
|
|
{
|
|
|
|
$resultados = file($rcsv);
|
|
|
|
|
|
$tamr=count($resultados);
|
|
$notaspreditas = file($npreditas);
|
|
$notastreino = file($npontuadas);
|
|
|
|
$ttreino= count($notastreino);
|
|
|
|
// Copiar labels das notas preditas para um vetor
|
|
|
|
$i=0;
|
|
$v1=array();
|
|
$v2=array();
|
|
foreach($notaspreditas as $np)
|
|
{
|
|
|
|
$x=explode(";", $np);
|
|
$v1[$i]= trim($x[0]);
|
|
|
|
$v2[$i]=trim($x[1]);
|
|
|
|
|
|
unset($x);
|
|
$i++;
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
$saida = $diretorioentrada2.$nomequestao."/resultado.csv";
|
|
|
|
|
|
$fp=fopen($saida, 'w');
|
|
$tam=count($v1);
|
|
|
|
for ($k=0; $k<$tamr; $k++)
|
|
{
|
|
$x = explode(";", $resultados[$k]);
|
|
|
|
$i=0;
|
|
$achou=0;
|
|
|
|
while ($achou==0 && $i<$tam)
|
|
{
|
|
|
|
if ($v1[$i]==$x[0])
|
|
{
|
|
$achou=1;
|
|
$posicao=$i;
|
|
}
|
|
$i++;
|
|
}
|
|
|
|
if (!($achou==0))
|
|
{
|
|
|
|
// Gravar rótulo da questao, nota e feedback (arquivosaida)
|
|
|
|
$gravar= $x[0].";".$v2[$posicao].";".$x[2] ;
|
|
|
|
fwrite($fp, $gravar);
|
|
}
|
|
else
|
|
{
|
|
// É amostra de treino
|
|
|
|
|
|
// Localiza $x[0] em notastreino e obtém a nota
|
|
|
|
$achou=0;
|
|
|
|
for($j=0; $achou==0 && $j<$ttreino; $j++)
|
|
{
|
|
|
|
$t=explode(";", $notastreino[$j]);
|
|
|
|
$nt1= trim($t[0]);
|
|
|
|
$nt2=trim($t[1]);
|
|
|
|
if ($x[0]==$nt1)
|
|
{
|
|
$achou=1;
|
|
}
|
|
|
|
unset($t);
|
|
|
|
}
|
|
|
|
// Gravar $x[0], $nota, $x[2]
|
|
|
|
if ($achou==1)
|
|
{
|
|
$gravar= $x[0].";".$nt2.";".$x[2] ;
|
|
fwrite($fp, $gravar);
|
|
}
|
|
|
|
|
|
}
|
|
|
|
unset($x);
|
|
|
|
|
|
}
|
|
|
|
unset($v1);
|
|
unset($v2);
|
|
|
|
fclose($fp);
|
|
|
|
$destino = "../submissoes/".$nomequestao."/resultado.csv";
|
|
|
|
|
|
|
|
if ( file_exists($saida) && file_exists($destino) )
|
|
{
|
|
if (!(copy($saida, $destino)))
|
|
{
|
|
echo "Arquivo resultado.csv não foi gerado";
|
|
}
|
|
|
|
$af = "../submissoes/".$nomequestao."/finalizado.txt";
|
|
$f=fopen($af, 'w');
|
|
fclose($f);
|
|
|
|
|
|
}
|
|
unset($resultados);
|
|
unset($notastreino);
|
|
unset($notaspreditas);
|
|
}
|
|
}
|
|
}
|
|
?>
|