我有来自患者编号索引的临床试验的数据。和数据框架中的治疗组。变量X1至X7对应于在第1个月到第7个月进行的观察。通常,改进对应于测量参数的减少。
Patient.No Group X1 X2 X3 X4 X5 X6 X7
1 PX-002 1 2 24 4 82 2 2 2
2 PX-009 5 77 6 36 33 1 2 0
3 PX-019 1 6 7 5 4 3 2 2
....
8 PX-001 54 7 7 5 5 3 2 1
9 PX-004 2 67 3 2 3 2 1 1
10 PX-013 3 5 24 4 2 1 1 2
11 PX-015 2 9 4 33 63 2 1 1
对于将第1组称为单独时间序列的一种好方法,一个跟踪7个月内每个患者的进展情况。在x轴上有几个月?
这是我的意思的丑陋原型:
我可以手动完成,但看起来很笨重。有更好的方法吗?
plot(unlist(data[data$Patient.No=="PX-002",c("X1","X2","X3","X4","X5","X6","X7")]),type="b")
lines(unlist(data[data$Patient.No=="PX-019",c("X1","X2","X3","X4","X5","X6","X7")]),type="b")
或者
grp1_data<-data[data$Treat..Group==1,]
plot.ts(y = unlist(grp1_data[grp1_data$Patient.No=="PX-002",c("X1","X2","X3","X4","X5","X6","X7")]),x = c(1,2,3,4,5,6,7))
答案 0 :(得分:1)
这在ggplot中非常简单。顺便说一下,你应该发布一个可重复的例子。如果你有一个,我会为你编码。希望这有效。
library(dplyr)
library(tidyr)
library(ggplot2)
df %>%
gather(Month, Value, -Patient.No, -Group) %>%
ggplot(aes(Month, Value, color = Group)) +
geom_line(alpha = 0.75) +
ylab("Chosen Metric") +
ggtitle("Patient Progress by Group")