Skip to content

Commit 323c5a6

Browse files
committed
Create output directories in write_*
1 parent 6a9ecd0 commit 323c5a6

File tree

8 files changed

+24
-8
lines changed

8 files changed

+24
-8
lines changed

petab/v1/conditions.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,9 +60,11 @@ def write_condition_df(df: pd.DataFrame, filename: str | Path) -> None:
6060
6161
Arguments:
6262
df: PEtab condition table
63-
filename: Destination file name
63+
filename: Destination file name. The parent directory will be created
64+
if necessary.
6465
"""
6566
df = get_condition_df(df)
67+
Path(filename).parent.mkdir(parents=True, exist_ok=True)
6668
df.to_csv(filename, sep="\t", index=True)
6769

6870

petab/v1/core.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,8 +60,10 @@ def write_simulation_df(df: pd.DataFrame, filename: str | Path) -> None:
6060
6161
Arguments:
6262
df: PEtab simulation table
63-
filename: Destination file name
63+
filename: Destination file name. The parent directory will be created
64+
if necessary.
6465
"""
66+
Path(filename).parent.mkdir(parents=True, exist_ok=True)
6567
df.to_csv(filename, sep="\t", index=False)
6668

6769

petab/v1/mapping.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,9 +60,11 @@ def write_mapping_df(df: pd.DataFrame, filename: str | Path) -> None:
6060
6161
Arguments:
6262
df: PEtab mapping table
63-
filename: Destination file name
63+
filename: Destination file name. The parent directory will be created
64+
if necessary.
6465
"""
6566
df = get_mapping_df(df)
67+
Path(filename).parent.mkdir(parents=True, exist_ok=True)
6668
df.to_csv(filename, sep="\t", index=True)
6769

6870

petab/v1/measurements.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,9 +58,11 @@ def write_measurement_df(df: pd.DataFrame, filename: str | Path) -> None:
5858
5959
Arguments:
6060
df: PEtab measurement table
61-
filename: Destination file name
61+
filename: Destination file name. The parent directory will be created
62+
if necessary.
6263
"""
6364
df = get_measurement_df(df)
65+
Path(filename).parent.mkdir(parents=True, exist_ok=True)
6466
df.to_csv(filename, sep="\t", index=False)
6567

6668

petab/v1/observables.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,9 +67,11 @@ def write_observable_df(df: pd.DataFrame, filename: str | Path) -> None:
6767
6868
Arguments:
6969
df: PEtab observable table
70-
filename: Destination file name
70+
filename: Destination file name. The parent directory will be created
71+
if necessary.
7172
"""
7273
df = get_observable_df(df)
74+
Path(filename).parent.mkdir(parents=True, exist_ok=True)
7375
df.to_csv(filename, sep="\t", index=True)
7476

7577

petab/v1/parameters.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -112,9 +112,11 @@ def write_parameter_df(df: pd.DataFrame, filename: str | Path) -> None:
112112
113113
Arguments:
114114
df: PEtab parameter table
115-
filename: Destination file name
115+
filename: Destination file name. The parent directory will be created
116+
if necessary.
116117
"""
117118
df = get_parameter_df(df)
119+
Path(filename).parent.mkdir(parents=True, exist_ok=True)
118120
df.to_csv(filename, sep="\t", index=True)
119121

120122

petab/v1/yaml.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -238,8 +238,10 @@ def write_yaml(yaml_config: dict[str, Any], filename: str | Path) -> None:
238238
239239
Arguments:
240240
yaml_config: Data to write
241-
filename: File to create
241+
filename: Destination file name. The parent directory will be created
242+
if necessary.
242243
"""
244+
Path(filename).parent.mkdir(parents=True, exist_ok=True)
243245
with open(filename, "w") as outfile:
244246
yaml.dump(
245247
yaml_config, outfile, default_flow_style=False, sort_keys=False

petab/v2/experiments.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,9 @@ def write_experiment_df(df: pd.DataFrame, filename: str | Path) -> None:
3434
3535
Arguments:
3636
df: PEtab experiments table
37-
filename: Destination file name
37+
filename: Destination file name. The parent directory will be created
38+
if necessary.
3839
"""
3940
df = get_experiment_df(df)
41+
Path(filename).parent.mkdir(parents=True, exist_ok=True)
4042
df.to_csv(filename, sep="\t", index=False)

0 commit comments

Comments
 (0)