Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions src/modelskill/timeseries/_vertical.py
Original file line number Diff line number Diff line change
Expand Up @@ -132,8 +132,7 @@ def _parse_vertical_input(
if isinstance(data, mikeio.Dataset):
ds = data.to_xarray()
elif isinstance(data, pd.DataFrame):
data.index.name = "time"
ds = data.to_xarray()
ds = data.rename_axis("time").to_xarray()
else:
assert len(data.dims) == 1, "Only 0-dimensional data are supported"
if data.coords[list(data.coords)[0]].name != "time":
Expand Down
11 changes: 11 additions & 0 deletions tests/model/test_vertical.py
Original file line number Diff line number Diff line change
Expand Up @@ -211,6 +211,17 @@ def test_vertical_model_roundtrip_from_dataset(self, vertical_model_df):
mr.name = "changed_name"
assert mr2.name == "salt_model"

def test_construction_does_not_mutate_input_dataframe(self, vertical_model_df):
assert vertical_model_df.index.name is None
original_columns = list(vertical_model_df.columns)

ms.VerticalModelResult(
vertical_model_df, item="Salinity", z_item="z", x=12.0, y=55.0
)

assert vertical_model_df.index.name is None
assert list(vertical_model_df.columns) == original_columns

# ================
# Test extract profile and align to obs profiles from dfsu
# ===============
Expand Down
11 changes: 11 additions & 0 deletions tests/observation/test_vertical_obs.py
Original file line number Diff line number Diff line change
Expand Up @@ -250,6 +250,17 @@ def test_roundtrip_from_dataset_preserves_vertical_observation(self, _vertical_d
assert obs2.attrs["station"] == "A"
assert obs2.name == obs.name

def test_construction_does_not_mutate_input_dataframe(self, _vertical_df):
assert _vertical_df.index.name is None
original_columns = list(_vertical_df.columns)

ms.VerticalObservation(
_vertical_df, item="value", z_item="z", x=12.0, y=55.0
)

assert _vertical_df.index.name is None
assert list(_vertical_df.columns) == original_columns

def test_to_dataframe(self, _vertical_df):
obs = ms.VerticalObservation(
_vertical_df,
Expand Down
Loading