From 7241b62efe3c0137de5d32f0df5509b987534c30 Mon Sep 17 00:00:00 2001 From: Marty Oehme Date: Thu, 14 Dec 2023 18:08:13 +0100 Subject: [PATCH] fix(code): Load data script from anywhere Allow loading the script both through quarto using full absolute path and through the command line using (I believe) a relative path. --- src/data.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/data.py b/src/data.py index d74fe92..d522ae2 100644 --- a/src/data.py +++ b/src/data.py @@ -1,7 +1,10 @@ import io from pathlib import Path import sys -from src import load_yaml +try: + import src.load_yaml as yaml # for quarto document scripts +except ModuleNotFoundError: + import load_yaml as yaml # for directly running the package from pandas import DataFrame, read_csv DEFAULT_YAML_PATH = Path("02-data/processed/relevant") @@ -26,7 +29,7 @@ def to_tsv(studies: list[dict]) -> str: def from_yml(yml_path: Path | str = DEFAULT_YAML_PATH) -> DataFrame: yml_path = Path(yml_path).resolve() - studies = load_yaml.load(yml_path) + studies = yaml.load(yml_path) if not studies: raise ValueError(f"No studies found in directory {yml_path.resolve()}") tsv = to_tsv(studies)