CDCgov / CDCgov/DynODE

Interesting and probably unwanted behaviour for `strain_interaction_to_cross_immunity`

Open
#186 6 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

wontfix
Dominant language
Python
Stars
13
Forks
3
Avg merge
19h 43m
Merged PRs (30d)
1

Description

The utils function to convert strain interaction to cross immunity can produce some counterintuitive cross immunity matrix.

import numpy as np
from utils import strain_interaction_to_cross_immunity

interact = np.array([[0.6, 1.0], [0.3, 1.0]])

strain_interaction_to_cross_immunity(2, interact)
# Array([[0. , 0.6, 1. , 0.6],
#        [0. , 0.3, 1. , 1. ]], dtype=float32)

So in this case, if we say that the "interaction" for:

  1. challenging strain 1 to a strain 1 infected is 0.6, and
  2. challenging strain 1 to strain 2 infected is 1.0

A person who is infected by strain 2 only has cross immunity of 1.0 towards challenging strain 1, but if they are infected by both strain 1 & 2, their cross immunity drops to 0.6 towards challenging strain 1.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating utils.strain_interaction_to_cross_immunity and reproducing the matrix from the issue. Review nearby tests or usage to determine the intended behavior for combined infections; done should include an agreed specification and regression coverage for the interaction cases.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
data
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.