|
20 | 20 | #' factor_name='Species',
|
21 | 21 | #' blank_label='setosa',
|
22 | 22 | #' qc_label='versicolor')
|
23 |
| -#' M = method.apply(M,D) |
| 23 | +#' M = model.apply(M,D) |
24 | 24 | #'
|
25 | 25 | #' @export blank_filter
|
26 | 26 | blank_filter<-setClass(
|
27 | 27 | "blank_filter",
|
28 |
| - contains = c('method'), |
| 28 | + contains = c('model'), |
29 | 29 | slots=c(params.fold_change='entity',
|
30 | 30 | params.blank_label='entity',
|
31 | 31 | params.qc_label='entity',
|
@@ -58,41 +58,49 @@ blank_filter<-setClass(
|
58 | 58 | )
|
59 | 59 |
|
60 | 60 | #' @export
|
61 |
| -#' @template method_apply |
62 |
| -setMethod(f="method.apply", |
| 61 | +#' @template model_train |
| 62 | +setMethod(f="model.train", |
63 | 63 | signature=c("blank_filter","dataset"),
|
64 | 64 | definition=function(M,D)
|
65 | 65 | {
|
66 |
| - opt=param.list(M) |
67 | 66 | smeta=dataset.sample_meta(D)
|
68 | 67 | x=dataset.data(D)
|
69 | 68 | # remove = NULL does not remove blanks. ANY VALUE removes blanks.
|
70 |
| - blank_filtered = pmp::filter_peaks_by_blank(t(x), fold_change=opt$fold_change, |
71 |
| - classes=smeta[,opt$factor_name], |
72 |
| - blank_label=opt$blank_label, |
73 |
| - qc_label=opt$qc_label, |
| 69 | + blank_filtered = pmp::filter_peaks_by_blank(t(x), fold_change=M$fold_change, |
| 70 | + classes=smeta[,M$factor_name], |
| 71 | + blank_label=M$blank_label, |
| 72 | + qc_label=M$qc_label, |
74 | 73 | remove=FALSE,
|
75 |
| - fraction_in_blank=opt$fraction |
| 74 | + fraction_in_blank=M$fraction |
76 | 75 | )
|
77 |
| - dataset.data(D) = as.data.frame(t(blank_filtered$df)) |
78 | 76 |
|
| 77 | + # store the flags |
| 78 | + flags=data.frame(blank_filtered$flags) |
| 79 | + output.value(M,'flags') = data.frame(blank_filtered$flags,stringsAsFactors = F) |
| 80 | + return(M) |
| 81 | + } |
| 82 | +) |
| 83 | + |
| 84 | +#' @export |
| 85 | +#' @template model_predict |
| 86 | +setMethod(f="model.predict",signature=c("blank_filter","dataset"), |
| 87 | + definition=function(M,D) { |
79 | 88 | # remove the blanks. do it this way because pmp doesnt remove from class labels.
|
80 |
| - RB = filter_smeta(mode='exclude',levels=opt$blank_label,factor_name=opt$factor_name) |
81 |
| - RB=method.apply(RB,D) |
| 89 | + RB = filter_smeta(mode='exclude',levels=M$blank_label,factor_name=M$factor_name) |
| 90 | + RB=model.apply(RB,D) |
82 | 91 | D=predicted(RB)
|
83 | 92 |
|
84 |
| - flags=data.frame(blank_filtered$flags) |
| 93 | + # get the flags |
| 94 | + flags=M$flags |
85 | 95 | vmeta=dataset.variable_meta(D)
|
86 | 96 | vmeta=vmeta[flags$blank_flags==1,,drop=FALSE]
|
87 | 97 | dataset.variable_meta(D)=vmeta
|
88 | 98 |
|
89 | 99 | output.value(M,'filtered') = D
|
90 |
| - output.value(M,'flags') = data.frame(blank_filtered$flags,stringsAsFactors = F) |
91 | 100 | return(M)
|
92 | 101 | }
|
93 | 102 | )
|
94 | 103 |
|
95 |
| - |
96 | 104 | ##### plots
|
97 | 105 | #' plot for blank filter
|
98 | 106 | #'
|
|
0 commit comments