Skip to content

Commit a4412e1

Browse files
committed
Fix dataframe error when no messages found
1 parent 21e056d commit a4412e1

3 files changed

Lines changed: 10 additions & 4 deletions

File tree

microSWIFTtelemetry/pull_telemetry.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ def create_request(
6565

6666

6767
def pull_telemetry_as_var(
68-
buoy_id: str,
68+
buoy_id: str, # TODO: should this accept a list?
6969
start_date: datetime,
7070
end_date: datetime = datetime.utcnow(),
7171
var_type: str = 'dict',

microSWIFTtelemetry/sbd/compile_sbd.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -82,17 +82,24 @@ def compile_sbd(
8282
if var_type == 'pandas':
8383
df = pandas.DataFrame(data)
8484
errors = pandas.DataFrame(errors)
85+
8586
if not df.empty:
8687
to_pandas_datetime_index(df)
8788
else:
8889
warnings.warn("Empty DataFrame; if you expected data, make sure "
8990
"the `buoy_id` is a valid microSWIFT ID and that "
9091
"`start_date` and `end_date` are correct.")
92+
93+
if not errors.empty:
94+
errors = errors.sort_values(by='file_name')
95+
errors.reset_index(drop=True, inplace=True)
96+
97+
#TODO: concatenate dfs?
9198
return df, errors
9299

93100
if var_type == 'xarray': # TODO: support for xarray
94101
raise NotImplementedError('xarray is not supported yet')
95-
102+
#TODO: should this be 'dataframe' and 'dataset'?
96103
raise ValueError("var_type can only be 'dict', 'pandas', or 'xarray'")
97104

98105

@@ -116,7 +123,6 @@ def to_pandas_datetime_index(
116123
df[datetime_column] = to_datetime(df['datetime'], utc=True)
117124
df.set_index('datetime', inplace=True)
118125
df.sort_index(inplace=True)
119-
# df.drop(['datetime'], axis=1, inplace=True)
120126

121127

122128
def _combine_dict_list(dict_list):

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
from setuptools import setup, find_packages
44
PACKAGES = find_packages()
55

6-
# Get version and release info, which is all stored in littlebuoybigwaves/version.py
6+
# Get version and release info from version.py
77
ver_file = os.path.join('microSWIFTtelemetry', 'version.py')
88
with open(ver_file) as f:
99
exec(f.read())

0 commit comments

Comments
 (0)