diff --git a/antarest/study/service.py b/antarest/study/service.py index d394056f95..a0b447bf20 100644 --- a/antarest/study/service.py +++ b/antarest/study/service.py @@ -1600,6 +1600,7 @@ def _create_edit_study_command( # Can happen with data with only one column. In this case, we don't care about the delimiter. delimiter = "\t" df = pd.read_csv(io.BytesIO(data), delimiter=delimiter, header=None).replace(",", ".", regex=True) + df = df.dropna(axis=1, how="all") # We want to remove columns full of NaN at the import matrix = df.to_numpy(dtype=np.float64) matrix = matrix.reshape((1, 0)) if matrix.size == 0 else matrix return ReplaceMatrix( diff --git a/tests/integration/raw_studies_blueprint/test_fetch_raw_data.py b/tests/integration/raw_studies_blueprint/test_fetch_raw_data.py index e30e929a0b..967a43b6f1 100644 --- a/tests/integration/raw_studies_blueprint/test_fetch_raw_data.py +++ b/tests/integration/raw_studies_blueprint/test_fetch_raw_data.py @@ -212,18 +212,20 @@ def test_get_study_data(self, client: TestClient, user_access_token: str, intern b"\xef\xbb\xbf1;1;1;1;1\r\n1;1;1;1;1", b"1;1;1;1;1\r1;1;1;1;1", b"0,000000;0,000000;0,000000;0,000000\n0,000000;0,000000;0,000000;0,000000", + b"1;2;3;;;\n4;5;6;;;\n", ], - ["\t", "\t", ",", "\t", ";", ";", ";"], + ["\t", "\t", ",", "\t", ";", ";", ";", ";"], ): res = client.put(raw_url, params={"path": matrix_path}, files={"file": io.BytesIO(content)}) assert res.status_code == 204, res.json() res = client.get(raw_url, params={"path": matrix_path}) written_data = res.json()["data"] if not content.decode("utf-8"): - # For some reason the `GET` returns the default matrix when it's empty + # The `GET` returns the default matrix when it's empty expected = 8760 * [[0]] if study_type == "raw" else [[]] else: df = pd.read_csv(io.BytesIO(content), delimiter=delimiter, header=None).replace(",", ".", regex=True) + df = df.dropna(axis=1, how="all") # We want to remove columns full of NaN at the import expected = df.to_numpy(dtype=np.float64).tolist() assert written_data == expected