Skip to content

Commit

Permalink
Merge pull request #301 from billdenney/299-simplify-the-setexcludeco…
Browse files Browse the repository at this point in the history
…lumn-function

Simplify exclude column addition
  • Loading branch information
billdenney committed Jun 28, 2024
2 parents 3067f93 + 9cdc104 commit 0621877
Show file tree
Hide file tree
Showing 8 changed files with 23 additions and 26 deletions.
8 changes: 2 additions & 6 deletions R/class-PKNCAconc.R
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ PKNCAconc.tbl_df <- function(data, ...) {
#' @rdname PKNCAconc
#' @export
PKNCAconc.data.frame <- function(data, formula, subject,
time.nominal, exclude, duration, volume,
time.nominal, exclude = NULL, duration, volume,
exclude_half.life, include_half.life, sparse=FALSE, ...) {
# The data must have... data
if (nrow(data) == 0) {
Expand Down Expand Up @@ -132,11 +132,7 @@ PKNCAconc.data.frame <- function(data, formula, subject,
)
}
class(ret) <- c("PKNCAconc", class(ret))
if (missing(exclude)) {
ret <- setExcludeColumn(ret, dataname=getDataName.PKNCAconc(ret))
} else {
ret <- setExcludeColumn(ret, exclude=exclude, dataname=getDataName.PKNCAconc(ret))
}
ret <- setExcludeColumn(ret, exclude = exclude, dataname = getDataName.PKNCAconc(ret))
# Values must be unique (one value per measurement), check after the exclusion
# column has been added to the object so that exclusions can be accounted for
# in duplicate checking.
Expand Down
8 changes: 2 additions & 6 deletions R/class-PKNCAdose.R
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ PKNCAdose.tbl_df <- function(data, ...) {
#' @rdname PKNCAdose
#' @export
PKNCAdose.data.frame <- function(data, formula, route, rate, duration,
time.nominal, exclude, ...) {
time.nominal, exclude = NULL, ...) {
# The data must have... data
if (nrow(data) == 0) {
stop("data must have at least one row.")
Expand Down Expand Up @@ -115,11 +115,7 @@ PKNCAdose.data.frame <- function(data, formula, route, rate, duration,
columns = parsed_form
)
class(ret) <- c("PKNCAdose", class(ret))
if (missing(exclude)) {
ret <- setExcludeColumn(ret)
} else {
ret <- setExcludeColumn(ret, exclude=exclude)
}
ret <- setExcludeColumn(ret, exclude = exclude)
# Values must be unique (one value per measurement), check after the exclusion
# column has been added to the object so that exclusions can be accounted for
# in duplicate checking.
Expand Down
10 changes: 3 additions & 7 deletions R/class-PKNCAresults.R
Original file line number Diff line number Diff line change
Expand Up @@ -14,16 +14,12 @@
#' @returns A PKNCAresults object with each of the above within.
#' @family PKNCA objects
#' @export
PKNCAresults <- function(result, data, exclude) {
result <- pknca_unit_conversion(result=result, units=data$units)
PKNCAresults <- function(result, data, exclude = NULL) {
result <- pknca_unit_conversion(result = result, units = data$units)
# Add all the parts into the object
ret <- list(result=result,
data=data)
if (missing(exclude)) {
ret <- setExcludeColumn(ret, dataname="result")
} else {
ret <- setExcludeColumn(ret, exclude=exclude, dataname="result")
}
ret <- setExcludeColumn(ret, exclude = exclude, dataname = "result")
class(ret) <- c("PKNCAresults", class(ret))
addProvenance(ret)
}
Expand Down
6 changes: 3 additions & 3 deletions R/exclude.R
Original file line number Diff line number Diff line change
Expand Up @@ -120,9 +120,9 @@ exclude.default <- function(object, reason, mask, FUN) {
#' @param dataname The name of the data.frame within the object to add the
#' exclude column to.
#' @returns The object with an exclude column and attribute
setExcludeColumn <- function(object, exclude, dataname="data") {
setExcludeColumn <- function(object, exclude = NULL, dataname = "data") {
add.exclude <- FALSE
if (missing(exclude)) {
if (missing(exclude) || is.null(exclude)) {
# Exclude is not provided.
if ("exclude" %in% names(object$columns)) {
# If exclude is already given, then do nothing.
Expand All @@ -141,7 +141,7 @@ setExcludeColumn <- function(object, exclude, dataname="data") {
add.exclude <- TRUE
}
if (add.exclude) {
if (missing(exclude)) {
if (missing(exclude) | is.null(exclude)) {
# Generate the column name
exclude <-
setdiff(c("exclude", paste0("exclude.", max(names(object[[dataname]])))),
Expand Down
2 changes: 1 addition & 1 deletion man/PKNCAconc.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

11 changes: 10 additions & 1 deletion man/PKNCAdose.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion man/PKNCAresults.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion man/setExcludeColumn.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit 0621877

Please sign in to comment.