does this work for you:

> x <- read.csv(text = "Patient, Cycle, Variable1, Variable 2
+ A,1,4,5
+ A,2,3,3
+ A,3,4,NA
+ B,1,6,6
+ B,2,NA,6
+ C,1,6,5
+ C,3,2,2", as.is = TRUE)
>
> # test each Patient to see if columns need to be set to NA
> newX <- do.call(rbind,
+     lapply(split(x, x$Patient), function(.pat){
+         # test each column
+         for (i in c("Variable1", "Variable.2")){
+             # browser()
+             if (any(is.na(.pat[[i]]))) .pat[[i]] <- NA
+         }
+         .pat  # return value
+     })
+ )
> newX  # print result
    Patient Cycle Variable1 Variable.2
A.1       A     1         4         NA
A.2       A     2         3         NA
A.3       A     3         4         NA
B.4       B     1        NA          6
B.5       B     2        NA          6
C.6       C     1         6          5
C.7       C     3         2          2



On Fri, Jun 29, 2012 at 5:03 PM, Lib Gray <libgray3...@gmail.com> wrote:
> Hello, I have a data set where there are multiple "cycles" per "patient,"
> and I want to exclude from my data set instances where a variable was not
> measured every cycle. The difficulty is that the patients have different
> cycles; some have cycles 1,2, and 3, others only have 1 and 3 (and
> everything in between). Therefore, I'm having difficulty in in
> distinguishing between the NA of not having the cycle, and the NA of not
> having that particular measurement.
>
> Here's a similar example of the data:
>
> Patient, Cycle, Variable1, Variable 2
> A, 1, 4, 5
> A, 2, 3, 3
> A, 3, 4, NA
> B, 1, 6, 6
> B, 2, NA, 6
> C, 1, 6, 5
> C, 3, 2, 2
>
> So in this case, I would want all of Variable 1 for Patient B to be NA, and
> all of Variable 2 for Patient A to be NA.
>
> Does anyone have a good way of tackling this problem? I'm having issues
> with trying to subset the data such that I can compare Cycles within the
> patient's factor level.
>
> Thanks!
>
>        [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help@r-project.org mailing list
> 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.



-- 
Jim Holtman
Data Munger Guru

What is the problem that you are trying to solve?
Tell me what you want to do, not how you want to do it.

______________________________________________
R-help@r-project.org mailing list
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.

Reply via email to