Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .Rbuildignore
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,4 @@
^docs$
^pkgdown$
^\.github$
^\.lintr$
8 changes: 8 additions & 0 deletions .lintr
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
linters: linters_with_defaults() # see vignette("lintr")
encoding: "UTF-8"
exclusions: list(
"vignettes/articles/filter.Rmd",
"vignettes/articles/filter2.Rmd",
"vignettes/articles/downstream_analyses.Rmd",
"vignettes/articles/reference_semantics.Rmd"
)
46 changes: 25 additions & 21 deletions R/filter_pactr-methods.R
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ filter_pactr$set(
max_iso_shift,
merge_peaks,
merge_method = NULL) {
cli::cli_alert_info("Checking {nrow(self$mpactr_data$get_peak_table())}
peaks for mispicked peaks.")
l <- nrow(self$mpactr_data$get_peak_table())
cli::cli_alert_info("Checking {l} peaks for mispicked peaks.")

ion_filter_list <- list()
cut_ions <- c() # list
Expand Down Expand Up @@ -49,13 +49,14 @@ filter_pactr$set(
self$logger[["check_mismatched_peaks"]] <- ion_filter_list

if (isTRUE(merge_peaks)) {
cli::cli_alert_info("Argument merge_peaks is: {merge_peaks}.
Merging mispicked peaks with method {merge_method}.")
cli::cli_alert_info(c("Argument merge_peaks is: {merge_peaks}. ",
"Merging mispicked peaks with method ",
"{merge_method}."))

private$merge_ions(ion_filter_list, merge_method)
} else {
cli::cli_alert_warning("Argument merge_peaks is: {merge_peaks}.
Mispicked peaks will not be merged.")
cli::cli_alert_warning(c("Argument merge_peaks is: {merge_peaks}. ",
"Mispicked peaks will not be merged."))
}

self$logger$list_of_summaries$mispicked <- summary$new(
Expand Down Expand Up @@ -111,8 +112,8 @@ filter_pactr$set("private", "get_merged_ions", function(ringwin,

filter_pactr$set("private", "merge_ions", function(ion_filter_list, method) {
if (is.null(method)) {
cli::cli_abort("No method has been supplied for merging peaks.
method must be one of: sum")
cli::cli_abort(c("No method has been supplied for merging peaks. ",
"{.var method} must be one of: sum"))
}

if (method == "sum") {
Expand Down Expand Up @@ -222,21 +223,23 @@ filter_pactr$set(
function(group, remove_ions = TRUE) {
groups <- unique(self$mpactr_data$get_meta_data()$Biological_Group)
if (isFALSE(group %in% groups)) {
cli::cli_abort("{.var group} {group} is not in {.var Biological_Group}.
Options are: {groups}")

cli::cli_abort(c("{.var group} {group} is not in ",
"{.var Biological_Group}.",
"Options are: {groups}"))
}

cli::cli_alert_info("Parsing {nrow(self$mpactr_data$get_peak_table())}
peaks based on the following sample group: {group}.")
l <- nrow(self$mpactr_data$get_peak_table())
cli::cli_alert_info("Parsing {l} peaks based on the sample group: {group}.")

if (isFALSE(remove_ions)) {
cli::cli_alert_warning("Argument remove_ions is {remove_ions}.
Peaks from {group} will not be removed.")
cli::cli_alert_warning(c("Argument remove_ions is {remove_ions}. ",
"Peaks from {group} will not be removed."))
return()
}

cli::cli_alert_info("Argument remove_ions is: {remove_ions}.
Removing peaks from {group}.")
cli::cli_alert_info(c("Argument remove_ions is: {remove_ions}.",
"Removing peaks from {group}."))

ions <- self$logger[["group_filter-failing_list"]][[group]]
self$mpactr_data$set_peak_table(self$mpactr_data$get_peak_table()[
Expand Down Expand Up @@ -269,14 +272,15 @@ filter_pactr$set(

## abort if there are no technical replicates.
if (isFALSE(self$mpactr_data$isMultipleTechReps())) {
cli::cli_abort("There are no technical replicates in the dataset
provided. In order to run the replicability filter,
technical replicates are required.")
cli_abort(c("There are no technical replicates in the dataset provided. ",
"In order to run the replicability filter, technical ",
"replicates are required."))
}

input_ions <- self$mpactr_data$get_peak_table()$Compound
cli::cli_alert_info("Parsing {length(input_ions)} peaks for
replicability across technical replicates.")
cli <- cli::cli_alert_info
n <- length(input_ions)
cli("Parsing {n} peaks for replicability across technical replicates.")

cv <- data.table::melt(self$mpactr_data$get_peak_table(),
id.vars = c("Compound", "mz", "rt", "kmd"), variable.name =
Expand Down
7 changes: 4 additions & 3 deletions R/filters.R
Original file line number Diff line number Diff line change
Expand Up @@ -227,12 +227,14 @@ filter_group <- function(mpactr_object,
#'
#' data_filter <- filter_cv(data,
#' cv_threshold = 0.01,
#' cv_param = "mean"
#' cv_param = "mean",
#' copy_object = TRUE
#' )
#'
#' data_filter <- filter_cv(data,
#' cv_threshold = 0.01,
#' cv_param = "median"
#' cv_param = "median",
#' copy_object = TRUE
#' )
#'
filter_cv <- function(mpactr_object,
Expand All @@ -259,7 +261,6 @@ filter_cv <- function(mpactr_object,
return(mpactr_object)
}


###########################
### Insource ions filter ##
###########################
Expand Down
1 change: 1 addition & 0 deletions R/mpactr-methods.R
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ mpactr$set("private", "initialize_data", function() {
private$peak_table[, .SD, .SDcols = private$meta_data$Injection]
) > 0), ]
private$set_kmd()
private$peak_table$Compound <- as.character(private$peak_table$Compound)
})
mpactr$set("private", "set_kmd", function() {
private$peak_table[, kmd := mz - floor(mz)]
Expand Down
10 changes: 4 additions & 6 deletions R/peak_table_formatter.R
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@ format_by_type <- function(peak_table_path,
} # default condition = NULL
}


progenesis_formatter <- function(peak_table) {
peak_table <- data.table(readr::read_csv(peak_table,
skip = 2,
Expand Down Expand Up @@ -64,10 +63,6 @@ mz_mine_formatter <- function(peak_table) {
metaboscape_formatter <- function(peak_table, sample_names) {
peak_table <- data.table(readr::read_csv(peak_table, show_col_types = FALSE))
peak_table_convert <- data.table::copy(peak_table)
adduct_data <- utils::read.csv(system.file("extdata/ion_masses",
"DefinedIons.csv",
package = "mpactR"
))
peak_table_convert <- with(peak_table_convert, peak_table_convert[
, ion := gsub(
".*\\[(.+)\\].*", "\\1",
Expand All @@ -82,7 +77,10 @@ metaboscape_formatter <- function(peak_table, sample_names) {
][
charge_string == "3+", charge := 3
][
adduct_data,
utils::read.csv(system.file("extdata/ion_masses",
"DefinedIons.csv",
package = "mpactR"
)),
on = .(ion = IONS)
][
, mz := (PEPMASS / charge) + MASS
Expand Down
10 changes: 6 additions & 4 deletions R/summary-class.R
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,12 @@ summary <- R6::R6Class("summary",
private$passed_ions <- passed_ions
},
summarize = function(x) {
cli::cli_alert_success("{length(private$failed_ions)} ions failed the
{private$filter} filter,
{length(private$passed_ions)}
ions remain.")
l <- length(private$failed_ions)
f <- private$filter
r <- length(private$passed_ions)

cli::cli_alert_success(c("{l} ions failed the {f} filter, ",
"{r} ions remain."))
},
get_failed_ions = function() {
return(private$failed_ions)
Expand Down
7 changes: 4 additions & 3 deletions man/filter_cv.Rd

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

1 change: 0 additions & 1 deletion man/filter_mispicked_ions.Rd

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

Loading