Skip to content
Snippets Groups Projects
Commit 46f06731 authored by William Roberts's avatar William Roberts
Browse files

Make timestamp index when creating dataframe and add more documentation

parent d8f80da6
No related branches found
No related tags found
No related merge requests found
......@@ -78,7 +78,13 @@ class Updater(object):
if self.data.get(key) is None:
self.data[key] = np.array([])
self.data[key] = np.append(self.data[key][time_mask], record[key])
# Gets the seconds from the start of the current year. This makes any interval chronologically consistent.
# Gets the seconds from the start of the current year. This makes any interval equal to or smaller than a
# year an absolute interval (ie if the submit interval was 5 minutes, then data is submitted at 5, 10, 15,
# etc). For example: if "reference" used the start of the current minute and we wanted to submit anything in
# longer intervals than a minute, then the times that data is submitted would not be consistent. i.e. if the
# current minute was 13 and the submit interval was 5 minutes, then data would be submitted at 18, 23, 28,
# etc. If data collection went down and the next recorded current minute was 14, then data would be submitted
# at 19, 24, 29, etc (inconsistent).
reference = pd.datetime(record['timestamp'].year, 1, 1)
progress = (record['timestamp'] - reference).total_seconds() % self.submit_interval
# If data hits or will pass over a submit_interval interval, return data.
......@@ -86,8 +92,8 @@ class Updater(object):
return self._calculate_averages()
def _calculate_averages(self):
frame = pd.DataFrame(self.data)
frame.set_index('timestamp', inplace=True)
index = self.data.pop('timestamp')
frame = pd.DataFrame(self.data, index=index)
frame.mask(frame == -99999., inplace=True)
# Add wind direction components so we can average wind direction properly.
frame['wind_east'], frame['wind_north'], _ = calc.wind_vector_components(frame['wind_speed'],
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment