sesame oracle: compare without bead-count masking on both sides

This commit is contained in:
kemal committed 2026-09-29 00:29:25 +01:00
1 parent fccd916116
commit e5bf0dcee2
2 files changed
+5 -2

No files matched your search

+2 -1
View File
@@ -36,7 +36,8 @@ def main() -> int:
pos = {p: i for i, p in enumerate(man.probe_ids)}
res = {}
for prefix in a.prefixes:
s = sig.assemble(read_idat(prefix + "_Grn.idat"), read_idat(prefix + "_Red.idat"), man)
# min_beads=0: the oracle runs without bead-count masking (see sesame_oracle.R)
s = sig.assemble(read_idat(prefix + "_Grn.idat"), read_idat(prefix + "_Red.idat"), man, min_beads=0)
p = sig.detection_p(s)
n, fg, fr = sig.noob(s)
b = sig.beta_values(n)
+3 -1
View File
@@ -24,7 +24,9 @@ inband <- function(s) {
list(m = m, u = u)
}
for (prefix in args[-(1:3)]) {
read <- function() readIDATpair(prefix, platform = "EPIC", manifest = mft, controls = controls, min_beads = 3)
# no bead-count masking here (sesame's min_beads also masks every Infinium II probe, whose M address is NA);
# the comparison script runs simurg with the same setting
read <- function() readIDATpair(prefix, platform = "EPIC", manifest = mft, controls = controls)
sdf <- tryCatch(read(), error = function(e) {
message("first read failed (", conditionMessage(e), "); caching idatSignature and retrying")
sesameDataCache("idatSignature")