Skip to content
Snippets Groups Projects

Remove 'split' command

Merged Manon Blanco requested to merge split-remove-command into master
8 files
+ 2
239
Compare changes
  • Side-by-side
  • Inline
Files
8
# -*- coding: utf-8 -*-
"""
Split dataset
"""
from pathlib import Path
from teklia_toolbox.config import ConfigParser
from atr_data_generator.arguments import CommonArgs
from atr_data_generator.split.arguments import SplitArgs
from atr_data_generator.split.main import main
def add_split_subparser(subcommands):
parser = subcommands.add_parser(
"split",
description=__doc__,
help=__doc__,
)
parser.add_argument("--config", type=Path, help="Configuration file")
parser.set_defaults(func=main, config_parser=config_parser)
def get_parser():
parser = ConfigParser()
# Common
common = parser.add_subparser("common")
common.add_option("dataset_name", type=str)
common.add_option("output_dir", type=Path, default=None)
common.add_option("cache_dir", type=Path, default=None)
common.add_option("log_parameters", type=bool, default=True)
# Split
split = parser.add_subparser("split", default={})
split.add_option("train_ratio", type=float, default=0.8)
split.add_option("val_ratio", type=float, default=0.1)
split.add_option("test_ratio", type=float, default=0.1)
split.add_option("use_existing_split", type=bool, default=False)
return parser
def config_parser(configuration_path: Path):
"""
Returns parsed
- CommonArgs
- SplitArgs
"""
config_data = get_parser().parse(configuration_path)
return {
"common": CommonArgs(**config_data["common"]),
"split": SplitArgs(**config_data["split"]),
}
Loading