You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Most time series fields in a device activity file can have some missing values within the time series. Cadence, heart rate, coordinates, elevation etc. This is typically due to some sensor issue - an inability to access the GPS device or heart rate monitors.
When data is read in from a *FileReader into an Activity, algorithms do their best to infer the true value of these missing values using other available fields, but there are values that cannot be inferred and must remain null values. These values remain in the underlying DataFrame cells.
Currently, these missing DataFrame cell values are handled inconsistently between methods to access each field. Null cadence values are not included in the returned series, while null distance values are included. This creates mismatches when individual Series are used side-by-side. On my website, the cadence series often has less values than the lat-lon series because of the differences in how each is handled. This activity has the unwanted behavior, but the website is in between builds currently and does not draw the chart. The behavior will be clear when this is fixed.
I know that methods like mean_cadence currently will malfunction if they are asked to average null values, but I don't think that is a good reason to pre-process the output of the cadence series method. I think the mean/norm functions should handle the raw series that the methods return.
I am opening this issue to document the process of making the time series fields behave consistently. Also because I want to learn how to use github issues.
The text was updated successfully, but these errors were encountered:
Most time series fields in a device activity file can have some missing values within the time series. Cadence, heart rate, coordinates, elevation etc. This is typically due to some sensor issue - an inability to access the GPS device or heart rate monitors.
When data is read in from a *FileReader into an Activity, algorithms do their best to infer the true value of these missing values using other available fields, but there are values that cannot be inferred and must remain null values. These values remain in the underlying DataFrame cells.
Currently, these missing DataFrame cell values are handled inconsistently between methods to access each field. Null cadence values are not included in the returned series, while null distance values are included. This creates mismatches when individual Series are used side-by-side. On my website, the cadence series often has less values than the lat-lon series because of the differences in how each is handled. This activity has the unwanted behavior, but the website is in between builds currently and does not draw the chart. The behavior will be clear when this is fixed.
I know that methods like mean_cadence currently will malfunction if they are asked to average null values, but I don't think that is a good reason to pre-process the output of the cadence series method. I think the mean/norm functions should handle the raw series that the methods return.
I am opening this issue to document the process of making the time series fields behave consistently. Also because I want to learn how to use github issues.
The text was updated successfully, but these errors were encountered: