[R] spaghetti plot - urgent

Ulrik Stervbo ulrik.stervbo at gmail.com
Wed Jul 19 21:28:04 CEST 2017


Hi Rosa,

You pass a vector to ggplot, which expects a data.frame. I am sure you
meant to do this:

point7$y_point7 <- point7$beta0_7 + point7$beta1_7*point7$time + point7
$epsilon_7

ggplot(point7, aes(time, y_point7)) + geom_line()

HTH
Ulrik


On Wed, 19 Jul 2017 at 20:37 Rosa Oliveira <rosita21 at gmail.com> wrote:

> Hi everyone,
>
> I’m trying to do a spaghetti plot and I know I’m doing all wrong, It must
> be.
>
> What I need:
>
> 15 subjects, each with measurements over 5 different times (t1, ..., t5),
> and the variable that I need to represent in the spaguetti plot is given by:
>
> PCR = b0 + b1 * ti + epsilon
>
> B0, - baseline of each subject
> B1 - trajectory of each subject over time (so multiply by t)
> Epsilon - error associated with each subject
>
> Regression model with mixed effects.
>
> Thus, I generated b0, b1, epsilon and time created sequence.
>
> But I need to do spaguetti plot of the outcome and I can not understand
> how much I search the publications.
>
> Sorry for the stupidity, but I do not even know how to do it and I need it
> with the utmost urgency to finish a publication proposal :(
>
> Follows what I tried to do :( :( :(
>
>
> library(ggplot2)
> library(reshape)
> library(lattice)
> library(gtable)
> library(grid)
>
>
> set.seed(9027)
>
> n.longitudinal.observations  = 5                          # number of PCR
> measures (per subject) in the hospital period
> subjects                             = 15                      # Number of
> simulations (1 per subject in the study)
>
> beta0_7_gerar                      = rnorm(subjects, mean = 1, sd = .5)
> beta0_7                                =
> as.data.frame(matrix(beta0_7_gerar,nrow=subjects,ncol=1))      # beta 0 -
> input variable used to calculate PCR (the outcome)
> beta1_7_gerar                     = rnorm(subjects, mean = -1, sd = .5)
> beta1_7                               =
> as.data.frame(matrix(beta1_7_gerar,nrow=subjects,ncol=1) )      # beta 1 -
> input variable used to calculate PCR (the outcome)
>
> tj_gerar                                = seq.int(1,
> n.longitudinal.observations, 1)
> epsilon_7_gerar                  = rnorm(5*subjects, mean = 0, sd = .1)
> epsilon_7                             =
> as.data.frame(matrix(epsilon_7_gerar,nrow=subjects,ncol=1) )   # epsilon_7
> - input variable used to calculate PCR (the outcome) - associated with each
> subject
>
> tj                                          =
> as.data.frame(matrix(tj_gerar,nrow=subjects,ncol=1) )                   #
> time
>
> point7 <- cbind(beta0_7, beta1_7, tj, epsilon_7)
> point7
> point7 <- as.data.frame(point7)
>
> colnames(point7) = c("beta0_7","beta1_7","time", "epsilon_7")
>
>
> y_point7 <- point7$beta0_7 + point7$beta1_7*point7$time + point7
> $epsilon_7             (the outcome of the study - PCR)
> y_point7
>
> require(ggplot2)
>
> png('test.png')
> p = ggplot(y_point7, aes(time, y_point7)) + geom_line()
> print(p)
> dev.off()
> savehistory()
>
>
>
>
>
>
> OR:
>
> In the last part I also tried:
>
>
> ID = rep(1:3, each = 5)
>
>
> point7 <- cbind(ID,beta0_7, beta1_7, tj, epsilon_7)
> point7
> point7 <- as.data.frame(point7)
>
> colnames(point7) = c("ID","beta0_7","beta1_7","time", "epsilon_7")
>
>
>
>
>
> y_point7 <- point7$beta0_7 + point7$beta1_7*point7$time + point7 $epsilon_7
> y_point7
>
> crp7 <- y_point7
>
> head(point7, n = 15)
>
>
> ggplot(aes(x = tj_gerar, y = crp7), data = point7) +
>   geom_line(aes(group = ID), color = "gray") +
>   geom_smooth(aes(group = 1), method = "lm", size = 3, color = "red", se =
> FALSE) +
>   theme_bw()
>
> But none of these worked :(
>
> I was looking to have something like:
>
>
> Being the outcome PCR and the year the times (1, 2, 3, 4, 5).
>
> Can someone help me please?
>
>
> Thanks,
>
> Best Rosa
>
>
>
> ______________________________________________
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.

	[[alternative HTML version deleted]]



More information about the R-help mailing list