X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/predictops.git/blobdiff_plain/6a7cf0e5dd962e7da028cb0d82c6682ac87b0540..f5357178353432c5431fc0fd875b9928a326e4c7:/main.py?ds=sidebyside diff --git a/main.py b/main.py index 3e31d16..d1d7f9c 100644 --- a/main.py +++ b/main.py @@ -1,59 +1,32 @@ -from lib.source import MeteoFrance +from predictops.engine import Engine +from predictops.learn.preprocessing import Preprocessing -from configparser import ConfigParser -from logging.config import fileConfig from logging import getLogger +from logging.config import fileConfig from pathlib import Path -from shutil import rmtree -from subprocess import Popen, PIPE fileConfig((Path.cwd() / 'config') / 'logging.cfg') logger = getLogger() +if __name__ == '__main__': -class Engine: - def __init__(self, clean = False): - logger.info("Predictops engine launched") - if clean: - self.clean() - print("Ne pas oublier d'exporter la BDD dans pgModeler") - print("Ni de copier l'archive dans la data") - - def clean(self): - # Cleaning the data directory - logger.info("Cleaning and restoring data directory") - directory = Path.cwd() / 'data' - if directory.is_dir(): - rmtree(directory) - p = Path(Path.cwd() / 'data') - p.mkdir() - - # Cleaning the postgresql database - config = ConfigParser() - config.read((Path.cwd() / 'config') / 'main.cfg') - - host = config['postgresql']['host'] - user = config['postgresql']['user'] - port = config['postgresql']['port'] - dbname = config['postgresql']['dbname'] + config = (Path.cwd() / 'config') / 'learn.cfg' + engine = Engine(config_file = config) - logger.info("PostgreSQL database deletion") - command = ['dropdb', '-h', host, '-U', user, '-p', port, dbname] - process = Popen(command, stdout=PIPE, stderr=PIPE) - process.communicate() + engine.add_features() + engine.add_target() - logger.info("PostgreSQL database creation") - command = ['createdb', '-h', host, '-U', user, '-p', port, dbname] - process = Popen(command, stdout=PIPE, stderr=PIPE) - process.communicate() + process = Preprocessing(config_file = config, dict_features = engine.X) - def add_meteofrance(self): - self.meteofrance = MeteoFrance() + print(process.dataframe.head(n=20)) + print(process.dataframe.tail(n=20)) + '''target = toarea(stream_file = Path.cwd() / 'data' / 'targets' / 'sdis25' / 'interventions.csv') + depts = gpd.read_file( Path.cwd() / 'data' / 'targets' / 'departments' / "departements-20180101.shp") + Doubs = depts.loc[depts['nom'] == 'Doubs'].iloc[0] -engine = Engine(clean = False) -engine.add_meteofrance() -engine.meteofrance.update() -print(len(engine.meteofrance.dated_features)) \ No newline at end of file + ToArea(area=Doubs.geometry, + csv_file = Path.cwd() / 'data' / 'targets' / 'sdis25' / 'interventions.csv') + '''