plokmii commited on
Commit
04321d0
·
verified ·
1 Parent(s): 3e0fc01

Upload app.py with huggingface_hub

Browse files
Files changed (1) hide show
  1. app.py +6 -5
app.py CHANGED
@@ -683,14 +683,15 @@ def parse_xls_file(raw_bytes):
683
  pra6 = pra_all['X6']
684
  overall = 'Positive' if pra6 > 0 else 'Negative'
685
 
686
- # Confident alleles (sero 層級檢查)
687
- # 將 beads_detail 轉為 get_confident_alleles 需要的格式
688
  br_dict = OrderedDict()
 
689
  for b in beads_detail:
690
  br_dict[b['bead']] = {'rxn': b['rxn']}
691
- confident, allele_decisions = get_confident_alleles(br_dict, bead_map)
 
692
 
693
- sero_mfi = build_sero_mfi_stats(beads_detail, confident, bead_map) if overall == 'Positive' else []
694
 
695
  pc_nc_ratio = round(pc_raw / nc_raw, 1) if nc_raw > 0 else 0
696
  qc_comment = build_qc_comment(nc_raw, pc_raw, beads_detail)
@@ -703,7 +704,7 @@ def parse_xls_file(raw_bytes):
703
  'beads': beads_detail,
704
  'confident_alleles': sorted(confident),
705
  'allele_decisions': allele_decisions,
706
- 'specificity': generate_specificity(confident, bead_map) if overall == 'Positive' else '(-)',
707
  'sero_mfi': sero_mfi,
708
  'comment': qc_comment,
709
  'qc': {
 
683
  pra6 = pra_all['X6']
684
  overall = 'Positive' if pra6 > 0 else 'Negative'
685
 
686
+ # Confident alleles XLS 路徑:用 XLS 自帶的 allele 建 bead map(lot 可能不同)
 
687
  br_dict = OrderedDict()
688
+ xls_bead_map = {}
689
  for b in beads_detail:
690
  br_dict[b['bead']] = {'rxn': b['rxn']}
691
+ xls_bead_map[b['bead']] = {'sero': b['sero'], 'allele': b['allele']}
692
+ confident, allele_decisions = get_confident_alleles(br_dict, xls_bead_map)
693
 
694
+ sero_mfi = build_sero_mfi_stats(beads_detail, confident, xls_bead_map) if overall == 'Positive' else []
695
 
696
  pc_nc_ratio = round(pc_raw / nc_raw, 1) if nc_raw > 0 else 0
697
  qc_comment = build_qc_comment(nc_raw, pc_raw, beads_detail)
 
704
  'beads': beads_detail,
705
  'confident_alleles': sorted(confident),
706
  'allele_decisions': allele_decisions,
707
+ 'specificity': generate_specificity(confident, xls_bead_map) if overall == 'Positive' else '(-)',
708
  'sero_mfi': sero_mfi,
709
  'comment': qc_comment,
710
  'qc': {