[R] appending
Martin Henry H. Stevens
HStevens at muohio.edu
Thu Jun 15 12:59:48 CEST 2006
Hi Dave,
Does this do what you want?
Hank
comp.CAND.frm <- read.table("comp.CAND.frm.frm", header=TRUE)
names(comp.CAND.frm) <- make.names(gsub("_", ".", names
(comp.CAND.frm)), unique=TRUE)
creatine.function.new = function(delta.0.Y.0=50, gamma=40,
dat=comp.CAND.frm) {
## function to calcuate the delta.i, i.e. the percent
## leftover ## gamma = rate of Cr going into bucket, e.g., mg/hr
## delta.0.Y.0 = product of delta.0 and Y.0 at baseline ##
##
unlist(
tapply(dat$Ucr, dat$Patient.no, function(Cs) {
n.obs <- length(Cs)
Y=numeric(n.obs+1)
Y[1] = delta.0.Y.0 + gamma
delta = numeric(n.obs)
for (i in 1:n.obs) delta[i] <- {
d <- (Y[i] - Cs[i])/Y[i]
Y[i+1] = delta[i] * Y[i] + gamma
d
}
delta}
)
)
}
dim(comp.CAND.frm)
6*24
creatine.function.new()
### The names are the concatenation of the patient and the observation
## e.g. patient 24 observation 6 is labeled 246.
On Jun 14, 2006, at 2:35 PM, Afshartous, David wrote:
> Hank,
> Attached is the dataframe that can be supplied for the argument
> comp.CAND.frm. The argument for comp.LIS.frm can be deleted since
> it currently isn't used. The other arguments can be set as:
> delta.0.Y.0 = 50
> gamma = 40.
> cheers,
> dave
>
>
>
>
> -----Original Message-----
> From: Martin Henry H. Stevens [mailto:HStevens at MUOhio.edu]
> Sent: Wednesday, June 14, 2006 1:23 PM
> To: Afshartous, David
> Cc: r-help at stat.math.ethz.ch
> Subject: Re: [R] appending
>
> Hi David,
> It would be helpful if you supply a little data, upon which this would
> operate.
> Hank
> On Jun 14, 2006, at 12:31 PM, Afshartous, David wrote:
>
>> All,
>>
>> In the function below I have 24 individuals and 6 calculations per
>> individual.
>> The 6 calculations are collected each time in a 1:24 loop when
>> calculating "delta".
>>
>> I'd like to collect all 144 = 24*6 calculations in one vector
>> ("delta.patient.comb").
>> The function works as is via indexing, but is there an easier way to
>> collect the measurements via appendinng the 6 measurements each time
>> to the current set? I couldn't find anything in Intro to R on
>> appending.
>>
>> cheers,
>> Dave
>> ps - please respond directly to afshar at miami.edu
>>
>>
>>
>> creatine.function.new = function(delta.0.Y.0, gamma, comp.LIS.frm,
>> comp.CAND.frm) { ## function to calcuate the delta.i, i.e. the
>> percent
>
>> ## leftover ## gamma = rate of Cr going into bucket, e.g., mg/hr ##
>> delta.0.Y.0 = product of delta.0 and Y.0 at baseline ##
>> Y.1 = delta.0.Y.0 + gamma
>> delta = numeric(6)
>> delta.patient = numeric(24)
>> delta.patient.comb = numeric(144)
>> ##
>> for (k in 1:24) { ## each patient
>> patient.k.CAND = which(comp.CAND.frm$Patient_no == k)
>> Ucr.CAND.patient.k = comp.CAND.frm$Ucr[patient.k.CAND]
>> C = Ucr.CAND.patient.k ## 6 observed creatanine values
> for each
>> patient
>> delta[1] = (Y.1 - C[1])/Y.1
>> Y.i = Y.1
>> delta.i = delta[1]
>> for (i in 1:5) { ## six measurments per
>> patient
>> Y.i.plus.1 = delta.i * Y.i + gamma
>> delta.i.plus.1 = (Y.i.plus.1 -
>> C[i+1])/Y.i.plus.1
>> delta[i+1] = delta.i.plus.1
>> delta.i = delta[i+1]
>> Y.i = Y.i.plus.1
>> }
>> delta.patient[k] = list(delta)
>> delta.patient.comb[(6*(k-1)+1):(6*(k-1)+ 6)] = delta
>> }
>> list(delta.patient, delta.patient.comb) }
>>
>> ______________________________________________
>> R-help at stat.math.ethz.ch mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide! http://www.R-project.org/posting-
>> guide.html
>
> Dr. M. Hank H. Stevens, Assistant Professor
> 338 Pearson Hall
> Botany Department
> Miami University
> Oxford, OH 45056
>
> Office: (513) 529-4206
> Lab: (513) 529-4262
> FAX: (513) 529-4243
> http://www.cas.muohio.edu/~stevenmh/
> http://www.muohio.edu/ecology/
> http://www.muohio.edu/botany/
> "E Pluribus Unum"
>
>
>
>
> <comp.CAND.frm.frm>
Dr. M. Hank H. Stevens, Assistant Professor
338 Pearson Hall
Botany Department
Miami University
Oxford, OH 45056
Office: (513) 529-4206
Lab: (513) 529-4262
FAX: (513) 529-4243
http://www.cas.muohio.edu/~stevenmh/
http://www.muohio.edu/ecology/
http://www.muohio.edu/botany/
"E Pluribus Unum"
More information about the R-help
mailing list