コード例 #1
0
    def get_queryset(self):

        data_kernel = testing.proses_testing()

        context = {'data_kernel': data_kernel}

        return context
コード例 #2
0
ファイル: view_data_testing.py プロジェクト: olif565/project2
def edit(request, pk, template_name='edit.html'):
    data = get_object_or_404(DataTesting, pk=pk)
    form = DataTestingForm(request.POST or None, instance=data)
    if form.is_valid():

        no = form.cleaned_data['no']
        ppm_ch4 = float(form.cleaned_data['ppm_ch4'])
        ppm_c2h4 = float(form.cleaned_data['ppm_c2h4'])
        ppm_c2h2 = float(form.cleaned_data['ppm_c2h2'])
        fault = form.cleaned_data['fault']

        sum = ppm_ch4 + ppm_c2h4 + ppm_c2h2
        ch4 = (ppm_ch4 / sum) * 100
        c2h4 = (ppm_c2h4 / sum) * 100
        c2h2 = (ppm_c2h2 / sum) * 100

        try:
            param = DataTesting.objects.get(no=no)
        except DataTesting.DoesNotExist:
            param = DataTesting()
            param.no = no

        param.ppm_ch4 = ppm_ch4
        param.ppm_c2h4 = ppm_c2h4
        param.ppm_c2h2 = ppm_c2h2
        param.persen_ch4 = ch4
        param.persen_c2h4 = c2h4
        param.persen_c2h2 = c2h2
        param.fault = fault
        param.save()

        # Testing
        testing.proses_testing()

        return redirect('home:data-testing')
    return render(request, template_name, {'form': form})
コード例 #3
0
ファイル: view_data_testing.py プロジェクト: olif565/project2
def create(request):
    form = DataTestingForm()

    if request.method == 'POST':
        if request.POST.get("input_excel"):
            try:
                excel_file = request.FILES['file-excel']
            except MultiValueDictKeyError:
                return render(request, 'home_data_testing_create.html', {'form': form})

            if str(excel_file).split('.')[-1] == 'xls':
                data = xls_get(excel_file, column_limit=5)
            elif str(excel_file).split('.')[-1] == 'xlsx':
                data = xlsx_get(excel_file, column_limit=5)
            else:
                return render(request, 'home_data_testing_create.html', {'form': form})

            if data is not None:
                save_excel_to_db(data)

                # Testing
                testing.proses_testing()

                return redirect('home:data-testing')
        else:
            form = DataTestingForm(request.POST)
            if form.is_valid():

                no = form.cleaned_data['no']
                ppm_ch4 = float(form.cleaned_data['ppm_ch4'])
                ppm_c2h4 = float(form.cleaned_data['ppm_c2h4'])
                ppm_c2h2 = float(form.cleaned_data['ppm_c2h2'])
                fault = form.cleaned_data['fault']

                sum = ppm_ch4 + ppm_c2h4 + ppm_c2h2
                ch4 = (ppm_ch4 / sum) * 100
                c2h4 = (ppm_c2h4 / sum) * 100
                c2h2 = (ppm_c2h2 / sum) * 100

                try:
                    param = DataTesting.objects.get(no=no)
                except DataTesting.DoesNotExist:
                    param = DataTesting()
                    param.no = no

                param.ppm_ch4 = ppm_ch4
                param.ppm_c2h4 = ppm_c2h4
                param.ppm_c2h2 = ppm_c2h2
                param.persen_ch4 = ch4
                param.persen_c2h4 = c2h4
                param.persen_c2h2 = c2h2
                param.fault = fault
                param.save()

                # Testing
                testing.proses_testing()

                return redirect('home:data-testing')

    print(form)
    return render(request, 'home_data_testing_create.html', {'form': form})
コード例 #4
0
ファイル: view_testing_1.py プロジェクト: olif565/project3
    def post(self, request, *args, **kwargs):
        form = ParameterFormKfold(request.POST)

        if form.is_valid():
            sigma = float(form.cleaned_data['sigma'])
            lamda = float(form.cleaned_data['lamda'])
            complexity = float(form.cleaned_data['complexity'])
            gamma = float(form.cleaned_data['gamma'])
            iterasi = int(form.cleaned_data['iterasi'])
            split = int(form.cleaned_data['split'])

            try:
                param = Parameter.objects.get(id='1')
                s = param.sigma
                if s is None or not s.strip():
                    s = '2'
            except Parameter.DoesNotExist:
                param = Parameter()
                param.id = '1'
                s = '2'

            param.sigma = sigma
            param.lamda = lamda
            param.complexity = complexity
            param.gamma = gamma
            param.iterasi = iterasi
            param.save()

            list_data_bias = []

            cv = StratifiedKFold(n_splits=split, shuffle=True, random_state=42)

            for i in range(7):
                lv = i + 1

                dt_normalisasi = normalisasi.get_normalisasi(lv)
                x = dt_normalisasi['data_normalisasi_x']
                y = dt_normalisasi['data_normalisasi_y']

                xK = np.array(x)
                yK = np.array(y)

                data_bias = []

                for train_index, test_index in cv.split(xK, yK):

                    matriks = training.get_matriks(xK[train_index].tolist(),
                                                   lamda, float(s), True)
                    n_data_normalisasi = matriks['n_data_normalisasi']
                    n_list_data_kernel = matriks['n_list_data_kernel']
                    n_list_data_matriks = matriks['n_list_data_matriks']

                    data_iterasi = training.get_iterasi(
                        n_list_data_matriks, complexity, gamma, iterasi)
                    data_alpha = data_iterasi[len(data_iterasi) -
                                              1]['data_alfa_baru']

                    for j, x in enumerate(n_data_normalisasi):
                        x[5] = data_alpha[j]

                    bias = 0
                    if len(data_iterasi) > 0:
                        dt = training.get_bias(lv, n_data_normalisasi,
                                               data_alpha, n_list_data_kernel,
                                               False)
                        bias = dt['bias']

                    data_bias.append(bias)

                list_data_bias.append(data_bias)

            accuracy = []

            for i in range(7):
                lv = i + 1

                dt_normalisasi = normalisasi.get_normalisasi(lv)
                x = dt_normalisasi['data_normalisasi_x']
                y = dt_normalisasi['data_normalisasi_y']

                xK = np.array(x)
                yK = np.array(y)

                data_akurasi = []

                y = 0

                for train_index, test_index in cv.split(xK, yK):

                    y = y + 1

                    matriks = training.get_matriks(xK[train_index].tolist(),
                                                   lamda, float(s), True)
                    n_data_normalisasi = matriks['n_data_normalisasi']
                    n_list_data_matriks = matriks['n_list_data_matriks']

                    data_iterasi = training.get_iterasi(
                        n_list_data_matriks, complexity, gamma, iterasi)
                    data_alpha = data_iterasi[len(data_iterasi) -
                                              1]['data_alfa_baru']

                    for j, x in enumerate(n_data_normalisasi):
                        x[5] = data_alpha[j]

                    data_testing = testing.proses_testing(
                        True, xK[test_index].tolist(), n_data_normalisasi,
                        list_data_bias[i][y - 1])

                    akurasi = []
                    for j, x in enumerate(data_testing):
                        akurasi.append(float(x['data_akurasi']))

                    data_akurasi.append(sum(akurasi) / len(akurasi))

                ac = sum(data_akurasi) / y
                accuracy.append(ac)

            context = {
                'scores': [],
                'scores_mean': (sum(accuracy) / len(accuracy)),
                'data_evaluasi': [],
                'display': 'block',
                'form': form
            }

            return render(request, self.template_name,
                          {self.context_object_name: context})
        else:
            context = {
                'scores': [],
                'scores_mean': 0,
                'data_evaluasi': [],
                'display': 'none',
                'form': form
            }

            return render(request, self.template_name,
                          {self.context_object_name: context})