SciQLop / speasy

Space Physics made EASY! A simple Python package to deal with main Space Physics WebServices (CDA,SSC,AMDA,..)
Other
24 stars 7 forks source link

AMDA : downloading multidimensional data fails #24

Closed Dolgalad closed 2 years ago

Dolgalad commented 2 years ago

Description

When downloading multidimensional data pandas fails to load CSV data because of duplicates in the column names. This is due to the fact that column names are obtained by splitting the character sequence by "," when comma characters appear in individual column names. For multidimensional data columns are named "x[i,j],x[i,j+1],...,x[i+1,0],....etc"

Simple fix : split using ", " separator instead (file speasy/webservices/amda/utils.py, line 36)

What I Did

import speasy as spz
p = spz.get_data("amda/psp_spe_EvsEvspa", "2020-07-30", "2020-07-31")

  File "/home/aschulz/Documents/python/speasy_module/speasy_official/speasy/speasy/webservices/amda/utils.py", line 38, in load_csv
    data = pds.read_csv(f, comment='#', delim_whitespace=True, header=None, names=columns).values.transpose()
  File "/home/aschulz/.local/lib/python3.8/site-packages/pandas/io/parsers.py", line 676, in parser_f
    return _read(filepath_or_buffer, kwds)
  File "/home/aschulz/.local/lib/python3.8/site-packages/pandas/io/parsers.py", line 445, in _read
    _validate_names(kwds.get("names", None))
  File "/home/aschulz/.local/lib/python3.8/site-packages/pandas/io/parsers.py", line 413, in _validate_names
    raise ValueError("Duplicate names are not allowed.")
Dolgalad commented 2 years ago

Pull request #25 submitted addressing this issue