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

posted by mittyri – Russia, 2021-12-22 22:34 (404 d 08:31 ago) – Posting: # 22710
Views: 1,161

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,477 posts in 4,708 threads, 1,603 registered users;
15 visitors (0 registered, 15 guests [including 4 identified bots]).
Forum time: 07:05 CET (Europe/Vienna)

The mediocre teacher tells.
The good teacher explains.
The superior teacher demonstrates.
The great teacher inspires.    William Arthur Ward

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