cytomining / cytomining/copairs
compute exact p-value for small null configs
- Dominant language
- Python
- Stars
- 24
- Forks
- 11
- PR merge metrics
- No merged PRs in 30d
Description
When num_pos and num_total is relatively small, e.g. (5 replicates, 20 negcon), total combinations is 4845. Here, instead of building `null_size=10,000` random ranks, p_val should be estimated by computing the 4,845 average precision scores.
In general, if `math.comb(num_total, num_pos)
Contributor guide
Research direction
Start by locating the code that uses num_pos, num_total, null_size, and p_val, then inspect how average precision scores are generated for random null ranks. Use math.comb(num_total, num_pos) as the branch condition; done means configurations below null_size use all combinations and produce the exact p-value, with existing behavior preserved otherwise.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- data
- Issue type
- Feature
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100