Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
意大利面在R_R_Loops_Plot - Fatal编程技术网

意大利面在R

意大利面在R,r,loops,plot,R,Loops,Plot,我的数据集如下所示: PatientID Visit Var1 Var2 Var3 Var4 Var5 1 ID1 0 42.28 4.57 22.56 4.36 8.87 2 ID1 1 55.60 6.34 3.74 3.76 6.96 3 ID1 2 69.45 11.18 20.69 2.15 8.34 4 ID2 0 58.78 7.81 6.57 1.19 7.31

我的数据集如下所示:

   PatientID Visit  Var1  Var2  Var3  Var4 Var5
1        ID1     0 42.28  4.57 22.56  4.36 8.87
2        ID1     1 55.60  6.34  3.74  3.76 6.96
3        ID1     2 69.45 11.18 20.69  2.15 8.34
4        ID2     0 58.78  7.81  6.57  1.19 7.31
5        ID2     1 10.33 38.27  0.48 14.41   NA
6        ID2     2 69.45 11.18 20.69  2.15 8.34
7        ID3     0 69.16  6.17  8.98  1.91 6.12
8        ID3     1 86.02 19.62  4.18  2.36 4.17
9        ID3     2 69.45 11.18 20.69  2.15 8.34
10       ID4     0 94.05 26.75  2.89  2.92 2.17
11       ID4     1 48.66 14.38  4.96  1.13 4.78
12       ID4     2 69.45 11.18 20.69  2.15 8.34
实际上我总共有大约60个var,所以这里我只是展示一个示例。我需要在R中计算所有个体每次就诊时每个变量的平均值,然后创建一个60行的意大利面图(每个对应于每次就诊时每个变量的平均值,以检查是否随时间变化,即就诊)。我还需要将特定变量的行(例如VAR1和VAR4)涂成红色

我通常使用以下代码创建意大利面条图,但在这种情况下,我可能需要创建一个循环来计算平均值

library(ggplot2)
library(data.table)
library(plyr)

tspag = ggplot(all.data, aes(x=Visit, y=Mean_values)) + 
  geom_line() + guides(colour=FALSE) + xlab("Days after") +
  ylab("Mean plot") + theme_bw() + theme(panel.border = element_blank(), panel.grid.major = element_blank(), 
    panel.grid.minor = element_blank(), axis.line = element_line(colour = "black"))

spag = tspag + aes(colour = factor(XXXX))
spag

我真的很感谢你的帮助。

你需要一点数据争论来达成你的目的。这里我将使用
dplyr
tidyr

library(dplyr)
library(tidyr)
all.data <- dat %>% group_by(Visit) %>%
                    summarise_each(funs(mean(., na.rm=TRUE)), -PatientID) %>%
                    gather(variable, val, -Visit)

你需要一点数据争论来获得你的方法。这里我将使用
dplyr
tidyr

library(dplyr)
library(tidyr)
all.data <- dat %>% group_by(Visit) %>%
                    summarise_each(funs(mean(., na.rm=TRUE)), -PatientID) %>%
                    gather(variable, val, -Visit)

假设您需要每个
Var-n
的平均值,对于每次就诊,对所有患者进行平均,下面是一个使用ggplot汇总数据的解决方案

library(reshape2)   # for melt(...)
library(ggplot2)
gg.df <- melt(df, id=1:2)
ggplot(gg.df, aes(x=Visit, y=value, color=variable))+
  stat_summary(fun.y=mean, geom="line")+
  scale_x_continuous(breaks=unique(gg.df$Visit))
library(重塑2)#用于熔体(…)
图书馆(GG2)

gg.df假设您需要每个
Var-n
的平均值,对于每次就诊,对所有患者进行平均,下面是一个使用ggplot总结数据的解决方案

library(reshape2)   # for melt(...)
library(ggplot2)
gg.df <- melt(df, id=1:2)
ggplot(gg.df, aes(x=Visit, y=value, color=variable))+
  stat_summary(fun.y=mean, geom="line")+
  scale_x_continuous(breaks=unique(gg.df$Visit))
library(重塑2)#用于熔体(…)
图书馆(GG2)

你已经试过计算平均值了吗?你们通常是怎么做的?数据表和plyr和这段代码有什么关系?你的平均数在哪里?你已经试过计算平均数了吗?你们通常是怎么做的?数据表和plyr和这段代码有什么关系?你想从哪里得到最重要的线索。我现在有了解决办法!非常感谢。我现在有了解决办法!