The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
activatr
can parse additional information beyond the
basic lat/lon data from GPX/TCX files, as well as sample the files for
quicker manipulation.
All of the advanced functionality is included in the
parse_gpx
or parse_tcx
function with optional
arguments. As a reminder, this is what the default parsing would look
like and return:
library(activatr)
# Get the running_example.gpx file included with this package.
filename <- system.file(
"extdata",
"running_example.gpx.gz",
package = "activatr"
)
df <- parse_gpx(filename)
lat | lon | ele | time |
---|---|---|---|
37.80405 | -122.4267 | 17.0 | 2018-11-03 14:24:45 |
37.80406 | -122.4267 | 16.8 | 2018-11-03 14:24:46 |
37.80408 | -122.4266 | 17.0 | 2018-11-03 14:24:48 |
37.80409 | -122.4266 | 17.0 | 2018-11-03 14:24:49 |
37.80409 | -122.4265 | 17.2 | 2018-11-03 14:24:50 |
If your GPX file contains additional extension information,
activatr
can parse that as well. In this case,
running_example.gpx
contains heart rate, cadence, and
temperature information. We can parse that by setting
detail = "advanced"
in parse_gpx
:
lat | lon | ele | time | hr | cad |
---|---|---|---|---|---|
37.80405 | -122.4267 | 17.0 | 2018-11-03 14:24:45 | 102 | 68 |
37.80406 | -122.4267 | 16.8 | 2018-11-03 14:24:46 | 104 | 73 |
37.80408 | -122.4266 | 17.0 | 2018-11-03 14:24:48 | 107 | 89 |
37.80409 | -122.4266 | 17.0 | 2018-11-03 14:24:49 | 110 | 89 |
37.80409 | -122.4265 | 17.2 | 2018-11-03 14:24:50 | 112 | 89 |
Now we can do plots like heart rate over time, or a distribution of cadences:
If you’re parsing many GPX files or GPX files sampled every second,
you often don’t need a “full resolution” view of the activity. The
every
argument to parse_gpx
allows you to only
sample some points from the GPX, speeding up the parsing:
# Parsing as normal gets all of the rows, but takes longer
full_time <- system.time({
df_full <- parse_gpx(filename)
})
nrow(df_full)
#> [1] 4433
full_time
#> user system elapsed
#> 0.134 0.003 0.138
# Grabbing every hundredth data point runs much faster
sample_time <- system.time({
df_sample <- parse_gpx(filename, every = 100)
})
nrow(df_sample)
#> [1] 44
sample_time
#> user system elapsed
#> 0.021 0.001 0.022
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.