R/prefilterSAM.R
prefilterSAM.Rd
This function performs pre-filtering of genes based on Significance Analysis of Microarrays (SAM). It runs a bootstrapping procedure to select significant genes based on the False Discovery Rate (FDR) and allows filtering by the percentage of times a gene is selected across multiple iterations.
prefilterSAM(
seData,
groupsVector,
FDRfilter = 0.05,
iter = 100,
percentageFilter = 80
)
SummarizedExperiment object with the normalized expression data and the phenotypic data in colData.
A binary vector indicating group assignment the samples.
A numeric value indicating the FDR threshold for selecting significant genes. Default is 0.05.
The number of iterations for bootstrapping. Default is 100.
A numeric value indicating the percentage of iterations a gene must appear in to be considered significant. Default is 80.
An ordered vector with the names of differentially expressed genes between the categories of the grouping vector. A list of DE genes ordered by SAM d.value and filtered by percentageFilter.
This function implements SAM (Schwender H., 2022) robust diferential expression analysis based on bootstrap . It helps to remove noisy genes reducing the computational complexity of further analysis. The function uses a bootstrapping approach, where in each iteration a random sample is drawn from the input data (with replacement), and the SAM algorithm is applied to select significant genes. The genes that appear as significant in a specified percentage of iterations (controlled by `percentageFilter`) are retained.
schwender2025siggenesasuri martinezromero2018asuri BuenoFortes2023asuri
data(seBRCA)
# Bootstrapped differential expression based on SAM.
# Parameters: FDR = 0.05, iter = 100, percentage filter = 80 %
# CAUTION: if the data have a high number of genes this function will take
# several minutes to compute.
groupsVector <- SummarizedExperiment::colData(seBRCA)$ER.IHC
set.seed(5)
DE_list_genes <- prefilterSAM(seBRCA, groupsVector)
#> 2025-07-08 12:32:50.024929
#>
|
| | 0%
|
| | 1%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|= | 2%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|== | 3%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|== | 4%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|== | 5%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|=== | 6%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|==== | 7%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|==== | 8%
|
|==== | 9%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|===== | 10%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|====== | 11%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|====== | 12%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|====== | 13%
|
|======= | 14%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|======== | 15%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|======== | 16%
|
|======== | 17%
|
|========= | 18%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|========== | 19%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|========== | 20%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|========== | 21%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|=========== | 22%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|============ | 23%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|============ | 24%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|============ | 25%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|============= | 26%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|============== | 27%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|============== | 28%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|============== | 29%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|=============== | 30%
|
|================ | 31%
|
|================ | 32%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|================ | 33%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|================= | 34%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|================== | 35%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|================== | 36%
|
|================== | 37%
|
|=================== | 38%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|==================== | 39%
|
|==================== | 40%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|==================== | 41%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|===================== | 42%
|
|====================== | 43%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|====================== | 44%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|====================== | 45%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|======================= | 46%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|======================== | 47%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|======================== | 48%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|======================== | 49%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|========================= | 50%
|
|========================== | 51%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|========================== | 52%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|========================== | 53%
|
|=========================== | 54%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|============================ | 55%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|============================ | 56%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|============================ | 57%
|
|============================= | 58%
|
|============================== | 59%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|============================== | 60%
|
|============================== | 61%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|=============================== | 62%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|================================ | 63%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|================================ | 64%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|================================ | 65%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|================================= | 66%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|================================== | 67%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|================================== | 68%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|================================== | 69%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|=================================== | 70%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|==================================== | 71%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|==================================== | 72%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|==================================== | 73%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|===================================== | 74%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|====================================== | 75%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|====================================== | 76%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|====================================== | 77%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|======================================= | 78%
|
|======================================== | 79%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|======================================== | 80%
|
|======================================== | 81%
|
|========================================= | 82%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|========================================== | 83%
|
|========================================== | 84%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|========================================== | 85%
|
|=========================================== | 86%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|============================================ | 87%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|============================================ | 88%
|
|============================================ | 89%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|============================================= | 90%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|============================================== | 91%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|============================================== | 92%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|============================================== | 93%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|=============================================== | 94%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|================================================ | 95%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|================================================ | 96%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|================================================ | 97%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|================================================= | 98%
#> Warning: The spline based estimation of pi0 results in a non-positive value of pi0.
#> Therefore, pi0 is estimated by using lambda = 0.5.
#>
|
|==================================================| 99%
|
|==================================================| 100%
#> 2025-07-08 12:34:11.791351