This function subsamples a matrix using either random sampling or meta cells method.
subsampling(
matrix,
subsampling_method = c("sample", "meta_cells", "pseudobulk"),
subsampling_ratio = 1,
seed = 1,
verbose = TRUE,
...
)
The input matrix to be subsampled.
The method to use for subsampling. Options are "sample", "pseudobulk" or "meta_cells".
The percent of all samples used for fit_srm
, default is 1
.
The random seed for cross-validation, default is 1
.
Logical value, default is TRUE
, whether to print progress messages.
Parameters for other methods.
The subsampled matrix.
data("example_matrix")
data("example_ground_truth")
subsample_matrix <- subsampling(
example_matrix,
subsampling_ratio = 0.5
)
#> ℹ Subsample matrix generated, dimensions: 2500 cells by 18 genes.
subsample_matrix_2 <- subsampling(
example_matrix,
subsampling_method = "meta_cells",
subsampling_ratio = 0.5,
fast_pca = FALSE
)
#> ! number of PCs of PCA result is less than the desired number, using all PCs.
#> ℹ Subsample matrix generated, dimensions: 2500 cells by 18 genes.
subsample_matrix_3 <- subsampling(
example_matrix,
subsampling_method = "pseudobulk",
subsampling_ratio = 0.5
)
#> ℹ Subsample matrix generated, dimensions: 2500 cells by 18 genes.
calculate_metrics(
inferCSN(example_matrix),
example_ground_truth,
return_plot = TRUE
)
#> ℹ Running for <dense matrix>.
#> ℹ Checking input parameters.
#> ℹ Using L0 sparse regression model.
#> ℹ Using 1 core
#> ✔ Run done.
#> $metrics
#> Metric Value
#> 1 AUROC 0.952
#> 2 AUPRC 0.437
#> 3 Precision 0.529
#> 4 Recall 1.000
#> 5 F1 0.692
#> 6 ACC 0.948
#> 7 JI 0.514
#> 8 SI 18.000
#>
#> $plot
#>
calculate_metrics(
inferCSN(subsample_matrix),
example_ground_truth,
return_plot = TRUE
)
#> ℹ Running for <dense matrix>.
#> ℹ Checking input parameters.
#> ℹ Using L0 sparse regression model.
#> ℹ Using 1 core
#> ✔ Run done.
#> $metrics
#> Metric Value
#> 1 AUROC 0.955
#> 2 AUPRC 0.449
#> 3 Precision 0.529
#> 4 Recall 1.000
#> 5 F1 0.692
#> 6 ACC 0.948
#> 7 JI 0.514
#> 8 SI 18.000
#>
#> $plot
#>
calculate_metrics(
inferCSN(subsample_matrix_2),
example_ground_truth,
return_plot = TRUE
)
#> ℹ Running for <dense matrix>.
#> ℹ Checking input parameters.
#> ℹ Using L0 sparse regression model.
#> ℹ Using 1 core
#> ✔ Run done.
#> $metrics
#> Metric Value
#> 1 AUROC 0.952
#> 2 AUPRC 0.439
#> 3 Precision 0.529
#> 4 Recall 1.000
#> 5 F1 0.692
#> 6 ACC 0.948
#> 7 JI 0.514
#> 8 SI 18.000
#>
#> $plot
#>
calculate_metrics(
inferCSN(subsample_matrix_3),
example_ground_truth,
return_plot = TRUE
)
#> ℹ Running for <dense matrix>.
#> ℹ Checking input parameters.
#> ℹ Using L0 sparse regression model.
#> ℹ Using 1 core
#> ✔ Run done.
#> $metrics
#> Metric Value
#> 1 AUROC 0.955
#> 2 AUPRC 0.449
#> 3 Precision 0.529
#> 4 Recall 1.000
#> 5 F1 0.692
#> 6 ACC 0.948
#> 7 JI 0.514
#> 8 SI 18.000
#>
#> $plot
#>