Files
stree_datasets/oc1results.py
Ricardo Montañana 116db3f528 Add oc1 and cart models
Update analysis and report mysql
2021-03-03 12:47:47 +01:00

52 lines
1.4 KiB
Python
Executable File

import os
from datetime import datetime
from experimentation.Sets import Datasets
from experimentation.Database import MySQL
def store_result(database, dataset, accuracy, time_spent):
command_insert = (
"replace into results (date, time, type, accuracy, "
"dataset, classifier, norm, stand, time_spent, parameters) values (%s,"
" %s, %s, %s, %s, %s, %s, %s, %s, %s)"
)
now = datetime.now()
date = now.strftime("%Y-%m-%d")
time = now.strftime("%H:%M:%S")
values = (
date,
time,
"crossval",
accuracy,
dataset,
"oc1",
True,
False,
time_spent,
str({"random_state": 1}),
)
cursor = database.cursor()
cursor.execute(command_insert, values)
database.commit()
def get_result(name):
filename = os.path.join("data", "oc1output", f"{name}.txt")
result_file = open(filename, "r")
lines = result_file.readlines()
accuracy = float(lines[-2].split("= ")[1].split("#")[0]) / 100
time = float(lines[-1])
print(f"accuracy=[{accuracy}] time=[{time}]")
result_file.close()
return accuracy, time
dbh = MySQL()
database = dbh.get_connection()
dt = Datasets(False, False, "tanveer")
for dataset in dt:
print(f"Processing {dataset[0]:30s}", end=" ")
accuracy, time_spent = get_result(dataset[0])
store_result(database, dataset[0], accuracy, time_spent)
dbh.close()