[R] How does one set up logical functions?

Rui Barradas ruipbarradas at sapo.pt
Tue May 7 16:28:39 CEST 2013


Hello,

See if the following is what you want.


dat <-
structure(list(DF = c("4/3/13 19:20", "4/4/13 21:03", "4/6/13 17:40",
"4/6/13 17:40", "4/6/13 22:48", "4/6/13 22:48", "4/7/13 5:32",
"4/7/13 5:32"), BG = c(105L, 74L, 81L, 82L, 106L, 102L, 87L,
103L), test_strip = c("Aviva-491350", "Aviva-491350", "Aviva-491640",
"Aviva-491350", "Aviva-491640", "Aviva-491350", "Aviva-491350",
"Aviva-491640")), .Names = c("DF", "BG", "test_strip"), class = 
"data.frame", row.names = c(NA,
-8L))

idx <- dat$DF < 100
HighLimit <- LowLimit <- numeric(nrow(dat))
HighLimit[idx] <- dat$BG[idx] + 15
LowLimit[idx] <- dat$BG[idx] - 15
HighLimit[!idx] <- dat$BG[!idx] + dat$BG[!idx]*0.15
LowLimit[!idx] <- dat$BG[!idx] - dat$BG[!idx]*0.15

x <- as.POSIXct(dat$DF, format = "%m/%d/%y %H:%M")
yl <- range(c(dat$BG, HighLimit, LowLimit))
plot(x, dat$BG, ylim = yl, type = "b")
lines(x, HighLimit)
lines(x, LowLimit)


Hope this helps,

Rui Barradas

Em 07-05-2013 15:02, Neotropical bat risk assessments escreveu:
> Hi all,
>
> I am trying to set up logical function(s) to deal with two adjustments
> to a blood glucose value.
> I have been dinking around in Excel and assume this will be much easier
> in R.
>
> DF is date-time, BG value in mg/dL,test strip
> 4/3/13 19:20 	105 	Aviva-491350
> 4/4/13 21:03 	74 	Aviva-491350
> 4/6/13 17:40 	81 	Aviva-491640
> 4/6/13 17:40 	82 	Aviva-491350
> 4/6/13 22:48 	106 	Aviva-491640
> 4/6/13 22:48 	102 	Aviva-491350
> 4/7/13 5:32 	87 	Aviva-491350
> 4/7/13 5:32 	103 	Aviva-491640
>
>
> What I need are the high and low ranges based on "acceptable" standards
> of the measured values.
>
> The logical expressions need to be
> IF BG =>100 then "High limit" would = (BG+(BG*.15))
> IF BG =>100 then "Low limit" would = (BG-(BG*.15))
> and
> IF BG <100 then "High limit" would = (BG+15)
> IF BG <100 then "Low limit" would = (BG-15)
>
> The standards are written as: 95% of the individual glucose results
> shall fall within ±15 mg/dL of the reference results at glucose
> concentrations less than 100 mg/dL and within ±15% at glucose
> concentrations greater than or equal to 100 mg/dL.
>
> Then I need to plot the measured value and also show the high & low
> "acceptable" values.
>
> Thanks for any who respond.
>
> Bruce
>
>
>
>
> ______________________________________________
> R-help at 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.
>



More information about the R-help mailing list