[英]Time-series data visualization
我在R中有一个很大的数据框,以长格式存储。 它包含从40个不同的人收集的体温数据,每16秒间隔10秒。 个人已暴露于条件(cond1和cond2)。 基本上看起来像这样:
ID Cond1 Cond2 Day ToD Temp
1 A B 1 18.0 37.1
1 A B 1 18.3 37.2
1 A B 2 18.6 37.5
2 B A 1 18.0 37.0
2 B A 1 18.3 36.9
2 B A 2 18.6 36.9
3 A A 1 18.0 36.8
3 A A 1 18.3 36.7
3 A A 2 18.6 36.7
...
我想为条件(AB,BA,AA,BB)的每种组合创建四个单独的折线图,以显示随时间(第1-16天)的平均温度。
ps ToD代表一天中的时间。 不知道是否需要提供它才能创建图。
到目前为止,我已经尝试通过以下方式将数据集定义为时间序列:
ts <- ts(data=dataset$Temp, start=1, end=16, frequency=8640)
plot(ts)
这将返回Temp的图,但是我无法弄清楚如何定义条件值来分解数据。
编辑:本质上我想要一个看起来像这样1的图 ,但每个组分别一个,并使用平均Temp值。 此图仅适用于处于一种情况的一个人,而我想要一个显示所有处于相同情况的人的均值。
您可以使用summarise
和group_by
到GROUP BY条件的数据,然后绘制。 这是您要找的东西吗?
library(dplyr)
## I created a dataframe df that looks like this:
ID Cond1 Cond2 Day ToD Temp
1 1 A B 1 18.0 37.1
2 1 A B 1 18.3 37.2
3 1 A B 2 18.6 37.5
4 2 B A 1 18.0 37.0
5 2 B A 1 18.3 36.9
6 2 B A 2 18.6 36.9
7 3 A A 1 18.0 36.8
8 3 A A 1 18.3 36.7
9 3 A A 2 18.6 36.7
df$Cond <- paste0(df$Cond1, df$Cond2)
d <- summarise(group_by(df, Cond, Day), t = mean(Temp))
ggplot(d, aes(Day, t, color = Cond)) + geom_line()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.