R 从以时间段为列的数据帧打印时间序列数据

R 从以时间段为列的数据帧打印时间序列数据,r,R,我在一个数据框中根据患者编号和治疗组索引了一项临床试验的数据。变量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

我在一个数据框中根据患者编号和治疗组索引了一项临床试验的数据。变量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\u数据这在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")

谢谢你,丹!我试过你的建议。但我得到了这样的东西。知道怎么回事了吗/谢谢你,丹!我试过你的建议。但我得到了这样的东西。知道怎么回事吗?我不能说,如果你编辑你的问题,提供一些数据,我可以复制/粘贴在感谢丹中,这将真的很有帮助。我会试着贴一张。
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")