use Supplementary for the code [🇷 for BE/BA]

posted by mittyri – Russia, 2021-12-22 22:34 (846 d 16:57 ago) – Posting: # 22710
Views: 1,867

Hi Weidson,

❝ I would like to understand why the code bellow is not working.

There are 2 problems:
- the code in the paper cannot work due to different quotation marks used (left and right), they should be substituted to simple quotations (" or ')
- there are some parts of the code not presented in the paper

So the best way is to use supplementary material as suggested
Below you can find R code from there. Note that the article is old, so some ggplot2 functions are deprecated, but still working.

library(nlme)
#head(Theoph)

#Figure 1(d)
ggplot(data=Theoph, aes(x=Time, y=conc, group=Subject)) + 
geom_line() +
labs(x="Time (hr)", y="Concentration (mg/L)")


##################################################################################
## we need some data manipulation for Figure 1(e) and Figure (f)
## below code is how to calculate approximate ntpd (nominal post time dose)
## "ntpd" is used for summarizing conc data (calculate mean at each time point)
## create body weight category for <70 kg or >=70 kg
##################################################################################

#--create a cut (time intervals)
Theoph$cut <- cut(Theoph$Time, breaks=c(-0.1,0,1,1.5, 2,3,4,6,8,12,16,20,24))

#--make sure each time point has reasonable data
table(Theoph$cut)

#--calcuate approximate ntpd
library(plyr)
tab <- ddply(Theoph, .(cut), summarize, ntpd=round(mean(Time, na.rm=T),2))

#--merge ntpd into Theoph data
Theoph <- merge(Theoph, tab, by=c("cut"), all.x=T)

#--sort the data by Subject and Time, select only nessesary columns
Theoph <- Theoph[order(Theoph$Subject, Theoph$Time),c("Subject","Wt","Dose","Time","conc","ntpd")] #head(Theoph)

#--create body weight category for <70 kg or >=70 kg for Figure 1(f)
Theoph$WT <- ifelse(Theoph$Wt<70, "WT < 70kg", "WT >= 70kg")

#--end of data manipulation
##################################################################################

# Figure 1(e)
ggplot(data=Theoph, aes(x=Time, y=conc, group=Subject)) + 
geom_line() +
labs(x="Time (hr)", y="Concentration (mg/L)") +
stat_summary(fun.y = mean, geom = "line", aes(x=ntpd, group = 1),
                color = "red", size = 1)

#--save as a ggplot object "p"
p <- ggplot(data=Theoph, aes(x=Time, y=conc, group=Subject)) + 
geom_line() +
labs(x="Time (hr)", y="Concentration (mg/L)") +
stat_summary(fun.y = mean, geom = "line", aes(x=ntpd, group = 1),
                color = "red", size = 1)

print(p) 

# Figure 1(f)
p + facet_grid(.~WT)

plot1 <- p + facet_grid(.~WT) #save for later use (section "Multiple Plots on One Page")


Kind regards,
Mittyri

Complete thread:

UA Flag
Activity
 Admin contact
22,985 posts in 4,823 threads, 1,653 registered users;
59 visitors (0 registered, 59 guests [including 6 identified bots]).
Forum time: 16:31 CEST (Europe/Vienna)

Complex, statistically improbable things are by their nature
more difficult to explain than
simple, statistically probable things.    Richard Dawkins

The Bioequivalence and Bioavailability Forum is hosted by
BEBAC Ing. Helmut Schütz
HTML5