【发布时间】:2015-07-03 05:04:35
【问题描述】:
我对传感器数据很着迷。我使用我的 iPhone 和一个名为 SensorLog 的应用程序来捕获 当我站立并推动我的腿跳跃时的加速度计数据。
我的目标是使用 R 创建一个模型,该模型可以识别跳跃以及我在空中停留的时间。 我不确定如何应对这样的挑战。我有一个带有加速度计数据的时间序列。
https://drive.google.com/file/d/0ByWxsCBUWbqRcGlLVTVnTnZIVVk/view?usp=sharing
一些问题:
- 如何检测时间序列数据中的跳跃?
- 如何识别播出时间部分?
- 如何训练这样的模型?
下面是用来创建上图的R代码,就是我站着做一个简单的跳跃。
谢谢!
# Training set
sample <- read.csv("sample-data.csv")
# Sum gravity
sample$total_gravity <- sqrt(sample$accelerometerAccelerationX^2+sample$accelerometerAccelerationY^2+sample$accelerometerAccelerationZ^2)
# Smooth our total gravity to remove noise
f <- rep(1/4,4)
sample$total_gravity_smooth <- filter(sample$total_gravity, f, sides=2)
# Removes rows with NA from smoothing
sample<-sample[!is.na(sample$total_gravity_smooth),]
#sample$test<-rollmaxr(sample$total_gravity_smooth, 10, fill = NA, align = "right")
# Plot gravity
plot(sample$total_gravity, type="l", col=grey(.2), xlab="Series", ylab="Gravity", main="Accelerometer Gravitational Force")
lines(sample$total_gravity_smooth, col="red")
stdevs <- mean(sample$total_gravity_smooth)+c(-2,-1,+1,+2)*sd(sample$total_gravity_smooth)
abline(h=stdevs)
【问题讨论】:
-
参考这里的答案。可能有帮助! stackoverflow.com/questions/31010553/…
标签: r machine-learning time-series accelerometer iot