Un modÚle épidémique simple avec des outils de base Python

"Pourquoi ne pas raviver l'Ă©pidĂ©mie", pensa soudain. Le travail Ă  domicile avec la bonne organisation peut ĂȘtre plus efficace que le travail de bureau, ce qui donne un temps supplĂ©mentaire honnĂȘte pour «penser» Ă  autre chose.


Tout a commencé, bien sûr, par la construction d'une visualisation quotidienne des données sur COVID-19 du Centre européen de contrÎle des maladies. Un algorithme simple trace quotidiennement des graphiques sur les données mises à jour à midi. Les graphiques attirent l'attention sur les actions anti-épidémiques efficaces de la Chine lorsque l'épidémie a commencé à décliner début mars. Mais les pays d'Europe prennent le relais - d'abord l'Italie (vous souvenez-vous comment fin février les autorités milanaises ont demandé aux touristes de retourner en ville, parce que l'économie souffre?), Puis l'Espagne.


image


— , , -, . 30 — , , , ? ? .


“” COVID-19 — - . , (!) . . . ? — !



- — . — . — . , — . . 3 :


  • : \\

, , — , . . ? , — “ ” caseIssuedDate ( — ). , — “ ” severity . “” .


: - = 1 .
:


  #['infectDate', 'endOfCaseDate', 'result', 'severity', 'caseDocumentedDate', 'isolated' ]
  epidemy = [[0, None, 'infected', 'mild', None, False]] 

*, \ ‘result’ . ‘recovered’ ‘dead’.


— , 

— . , ( “”, , ). , — .


— , “”. , 0.1 (10%) 1 10 . 100 10 , 100 10 0.1 = 100 . , : , . () :


 ['infectDate', 'endOfCaseDate', 'result', 'severity', 'caseDocumentedDate', 'isolated' ]

, , ( — !) .


— , , . ? , . : , , , — deathRate.


- ::



#  

dailyTransmissionContacts = 15 #    

# 

contagiousness = 0.01       #
severityRate = 0.3          #  
deathRate = 0.5             #  (   )
caseDuration = 25          # 

#  
closedPopulation = 10000

# 

periodToDocumented = caseDuration * 0.6 #       
mildDocumentedRate = 0.3
severeDocumentedRate = 0.9
isolationQualityRate = 0.1

#  

showDays = 150 #і  і

(. ) :
periodToIssued — , ,
mildDocmentedRate — 30%
severeDocumentedRate = 90%
isolationQualityRate — () . 100%


? , — 
 , , , , . — . . , COVID-19. — .



. :


— “” “” “”
, “” —
.2


   susceptibleToday = (closedPopulation - infectedCountToday - recoveredCountToday)
   newAffectedPeopleCount = int(((activeInfectedCountToday * dailyTransmissionContacts * contagiousness) // 1 * susceptibleToday/closedPopulation + 1))

* — “” . . ( ) .


.


.


, pandas.


10 . : 0 (.. ) 100%, “” .
6 . 120 ( ) ( ) — , .


totalAffected: 10000     deathsTotal: 1582   deathRate_real = 15%

image


( ). 10 , ,


image


. , . , COVID-19, — 5-7 . , , —


image


caseDuration :


image


: , , .


:


. caseIssuedDate — . “” . : “ , ”. , , - .


: “, , . > ?”
: “ , ...

: , , — . 2 : mildDocumentedRate severDocumentedRate — ( ) . : 7-9 10 , , . , . , , , , , . ? , . , .


mildIDocumentedRate = 0.3
severeDocumentedRate = 0.9

image


, . , : 150 50 — , , .. .


, .


, .. , . , . () .


( — — )


totalAffected: 10000     deathsTotal: 1582   deathRate_real = 15%
DocumentedTotal: 4789    deathsDocumented: 1406  deathRate_docum = 29%

. .


() : “” . — , .


periodToDocumented — . , “” , , . , — , — , , .


imageepidemy-7


periodToDocumented. mildDocumentedRate = 0.3 (30% ). “” , , .


: — , .


image


, [20:30] .


, , — .



:


  • (, )
  • ( ) +


.
. , , , .


image


(0 — , 1 — ).
, — , “ ” . , .



( ) .


, , . . , . ( 0.7) periodToDocumented.
, periodToDocumented ( ) 60% , .. 25 * 0.6 = 15 . 10, 7, 4


image


, , — “” , , , , . , .


:


totalAffected: 10000     deathsTotal: 1486   deathRate_real = 14%
totalAffected: 10000     deathsTotal: 1556   deathRate_real = 15%
totalAffected: 10000     deathsTotal: 1439   deathRate_real = 14%
totalAffected: 8466  deathsTotal: 1248   deathRate_real = 14%


— — . 2 :


dailyTransmissionContacts = 15 #  
contagiousness = 0.01 # 

“ ” . .


image


totalAffected: 10000     deathsTotal: 1557   deathRate_real = 15%
totalAffected: 7727  deathsTotal: 1173   deathRate_real = 15%
totalAffected: 4597  deathsTotal: 709    deathRate_real = 15%
totalAffected: 2008  deathsTotal: 299    deathRate_real = 14%

. 5 . , “ ”. — .



, .
. : 60 80, .


image


, , “” , , “ ”


totalAffected: 10000 deathsTotal: 1557 deathRate_real = 15%
totalAffected: 4597 deathsTotal: 709 deathRate_real = 15%
totalAffected: 10000 deathsTotal: 1434 deathRate_real = 14%



, “” , . , , , , / (, , ). “ ” — . , . , , — , ( , , , , , — , — ).
. ! , , .


: epidemy (‘recovered’).


image
image


totalAffected: 7890 deathsTotal: 1162 deathRate_real = 11%
totalAffected: 10000 deathsTotal: 1557 deathRate_real = 15%


5 20 ( ) 30% — .



, . :


  • , «». . .
  • . (, , , ) , , .
  • , ( “ ”).


“ ” , .


“ ” “” . , , , — . “” “ ” .


DiffĂ©rentes mĂ©thodes de suppression peuvent avoir des effets significativement diffĂ©rents: les mĂ©thodes testĂ©es d '«auto-isolement» et mĂȘme de «dĂ©tection prĂ©coce» n'ont pas montrĂ© les rĂ©sultats positifs attendus avec des paramĂštres de modĂšle proches de COVID19. Dans le mĂȘme temps, toute mesure de rĂ©pression Ă  un degrĂ© ou Ă  un autre "attĂ©nue" le pic de l'Ă©pidĂ©mie, ce qui peut affecter positivement le travail du systĂšme de santĂ© dans le contexte de l'Ă©pidĂ©mie.


La mesure la plus efficace était la quarantaine. Une quarantaine opportune et suffisante peut non seulement «étirer» le cours de l'épidémie, réduire la charge pesant sur le systÚme de santé, mais aussi parfois réduire le nombre de cas et la mortalité.


Ordinateur portable sur le lien google colab


All Articles