Skip to content

Commit c829c42

Browse files
committed
allow training/prediction use
previously limited to model_apply. model_train now flags sample for removal and model_predict will remove those samples from the test set data
1 parent a503bd7 commit c829c42

File tree

1 file changed

+12
-19
lines changed

1 file changed

+12
-19
lines changed

R/mv_sample_filter_class.R

Lines changed: 12 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -50,8 +50,8 @@ mv_sample_filter = function(mv_threshold=20,...) {
5050
)
5151

5252
#' @export
53-
#' @template model_apply
54-
setMethod(f="model_apply",
53+
#' @template model_train
54+
setMethod(f="model_train",
5555
signature=c("mv_sample_filter","DatasetExperiment"),
5656
definition=function(M,D)
5757
{
@@ -64,24 +64,8 @@ setMethod(f="model_apply",
6464
# apply filter
6565
filtered = pmp::filter_samples_by_mv(x,max_perc_mv=opt$mv_threshold/100,D$sample_meta[,1],remove_samples = FALSE)
6666
flags<-data.frame(attributes(filtered)$flags)
67-
# remove samples
68-
D=D[flags$filter_samples_by_mv_flags==1,,drop=FALSE]
69-
# fill output slots
70-
output_value(M,'filtered') = D
7167
output_value(M,'flags') = data.frame('flags'=flags[,2],row.names = rownames(x))
7268
output_value(M,'percent_missing')=data.frame('precent_missing'=flags[,1],row.names = rownames(x))
73-
74-
return(M)
75-
}
76-
)
77-
78-
#' @export
79-
#' @template model_train
80-
setMethod(f="model_train",
81-
signature=c("mv_sample_filter","DatasetExperiment"),
82-
definition=function(M,D)
83-
{
84-
M=model_apply(M,D)
8569
return(M)
8670
}
8771
)
@@ -92,7 +76,16 @@ setMethod(f="model_predict",
9276
signature=c("mv_sample_filter","DatasetExperiment"),
9377
definition=function(M,D)
9478
{
95-
M=model_apply(M,D)
79+
flags=M$flags
80+
# remove samples
81+
RM=filter_by_name(
82+
mode='exclude',
83+
dimension='sample',
84+
names=rownames(flags)[flags[,1]==0]
85+
)
86+
RM=model_apply(RM,D)
87+
# fill output slots
88+
output_value(M,'filtered') = predicted(RM)
9689
return(M)
9790
}
9891
)

0 commit comments

Comments
 (0)