Updated: 2020-12-14 07:46:20 PDT

Original version created 2020-05-03. See below for revision history

Intro


The spread of the SARS-COV-19 viral disease defies description in terms of a single statistic. To be informed about personal risk we need to know more than how many people have been sick at a national level or even state level, we need information about how many people are currently sick in our communicty and how the number of sick people is changing is changing at a state and even county level. It can be hard to find this information.

This analysis seeks to fill partially that gap. It includes:
1. Several national pictures of disease trends to enable a “large pattern” view of how disease has and is evolving a on country-wide scale.
2. A per capita analysis of disease spread.
3. A more granular analysis of regions, states, and counties to shed light on local disease pattern evolution.
4. Details of the time evolution of growth statistics.


This computed document is part of a constantly evolving analysis, so please “refresh” for the latest updates. If you have suggestions or comments please reach out on twitter @WinstonOnData or facebook.


You are welcome to visit my code repository on Github.
You are also welcome to visit my analysis on the Politics of COVID
Finally, you can alway check my Rpubs for new documents and updates.

National Statistics

Total & Active Cases, and Deaths

These trend charts show the national disease statistics. Note that raw daily trends are systematically related to the M-F work week.

Mortality and \(R_e\)

Distribution of \(R_e\) Values

There is a wide distribution of \(R_e\) across regions and counties. The distributions in the graph below looks roughly symmetrical because the x-scale is logarithmic.

National Maps

State Level Data

There are several maps below. These include:

  • pandemic total cases (How many people have been sick?)
  • pandemic total cases per capita (What fraction of people have been sick?)
  • daily cases per capita (what fraction of people are getting sick?)
  • forecast short term cases per capita (based on \(R_e\)) (how fast is the disease growning or shrinking?)

Pandemic Totals

Current Status of Active Disease

Computed Reproduction Rate \(R_e\).

County Data

While the State-Level Data tell as remarkable story, outbreaks tend to be highly localized to communities - County-level data can help decode this.


state R_e cases daily cases daily cases per 100k
Ohio 1.12 566403 12731 109.4
Tennessee 1.21 439047 7121 107.1
Rhode Island 1.03 61297 1126 106.6
Indiana 1.03 428707 6798 102.4
North Dakota 1.04 88324 733 97.4
Arizona 1.10 410542 6762 97.3
Nevada 1.06 187643 2836 97.0
Utah 0.98 233735 2796 91.8
Pennsylvania 1.15 497370 11576 90.5
Delaware 1.10 45494 853 89.8
South Dakota 0.96 89331 759 89.3
California 1.23 1590086 34289 87.6
Idaho 0.96 122193 1473 87.3
Oklahoma 1.12 236552 3387 86.4
New Mexico 1.01 119948 1739 83.1
Texas 1.34 1485083 23182 83.1
Alabama 1.11 296152 3944 81.1
Montana 0.98 73436 806 77.4
Mississippi 1.11 179678 2279 76.3
Kentucky 1.02 227140 3378 76.1
Arkansas 1.07 182990 2264 75.7
Massachusetts 1.10 279011 5161 75.6
Kansas 0.91 190701 2178 74.9
Colorado 0.95 291108 4097 74.1
Wisconsin 0.99 469666 4266 73.8
Minnesota 0.85 379226 4020 72.7
Illinois 0.99 851896 9131 71.2
West Virginia 1.07 63364 1281 70.0
New Hampshire 1.19 30548 928 69.1
Wyoming 0.86 39452 399 68.6
Nebraska 0.83 149450 1295 68.0
North Carolina 1.15 436807 6437 63.4
South Carolina 1.17 251706 3139 63.3
Connecticut 0.88 148040 2169 60.6
Georgia 1.16 521030 6070 58.9
Iowa 0.97 255958 1833 58.5
Missouri 0.97 333449 3408 56.0
New Jersey 1.01 401984 4955 55.8
New York 1.09 781248 10820 55.2
Louisiana 1.00 267909 2553 54.7
Florida 1.07 1123146 10360 50.3
Maryland 1.08 235003 3013 50.2
Virginia 1.16 224117 3372 48.4
Michigan 0.76 465113 4743 47.6
Washington 1.09 210344 3245 44.5
Oregon 0.99 94154 1426 34.9
Maine 1.20 15966 397 29.8
Vermont 0.98 5752 116 18.6

Regional Snapshots

Regional snapshots reveal the highly nuanced behavior of disease spread. Each snaphot includes multiple states and selected counties.

How to read the charts

There are four components:
1. State Maps show the number of active cases and with the Reproduction rate encoded as color.
2. State Graphs State-wide trend graphs.
3. Severity Ranking These is a table of counties where the highest number of new cases are expected. Severity is a compounded function \(f(R, cases(t))\). This is useful for finding new (often unexpected) “hot spots.” Added per capita rates.
4. County Graphs encode the R-value in the active number of cases. R is the Reproduction Rate.

(NOTE: R < 1 implies a shrinking number of active cases, R > 1 implies a growing number of active cases. For R = 1, active cases are stable. ).


Washington and Oregon

California

Four Corners

Mid-Atlantic

Deep South

FL and GA

Texas & Oklahoma

Michigan & Wisconsin

Minnesota, North Dakota, and South Dakota

Connecticut, Massachusetts, and Rhode Island

New York

Vermont, New Hampshire, and Maine

Carolinas

North-Rockies

Midwest

Tennessee and Kentucky

Missouri and Arkansas

Conclusions

It’s in control some places, but not all places. And many places are completely out-of-control.

Stay Safe!
Be Diligent!
…and PLEASE WEAR A MASK



Built with R Version 4.0.3
This document took 600.9 seconds to compute.
2020-12-14 07:56:21

version history

Today is 2020-12-14.
208 days ago: plots of multiple states.
200 days ago: include \(R_e\) computation.
197 days ago: created color coding for \(R_e\) plots.
192 days ago: reduced \(t_d\) from 14 to 12 days. 14 was the upper range of what most people are using. Wanted slightly higher bandwidth.
192 days ago: “persistence” time evolution.
185 days ago: “In control” mapping.
185 days ago: “Severity” tables to county analysis. Severity is computed from the number of new cases expected at current \(R_e\) for 6 days in the future. It does not trend \(R_e\), which could be a future enhancement.
177 days ago: Added census API functionality to compute per capita infection rates. Reduced spline spar = 0.65.
172 days ago: Added Per Capita US Map.
170 days ago: Deprecated national map. can be found here.
166 days ago: added state “Hot 10” analysis.
161 days ago: cleaned up county analysis to show cases and actual data. Moved “Hot 10” analysis to separate web page. Moved “Hot 10” here.
159 days ago: added per capita disease and mortality to state-level analysis.
147 days ago: changed to county boundaries on national map for per capita disease.
142 days ago: corrected factor of two error in death trend data.
138 days ago: removed “contained and uncontained” analysis, replacing it with county level control map.
133 days ago: added county level “baseline control” and \(R_e\) maps.
129 days ago: fixed normalization error on total disease stats plot.
122 days ago: Corrected some text matching in generating county level plots of \(R_e\).
116 days ago: adapted knot spacing for spline.
102 days ago:using separate knot spacing for spline fits of deaths and cases.
100 days ago: MAJOR UPDATE. Moved things around. Added per capita severity map.
72 days ago: improved national trends with per capita analysis.
71 days ago: added county level per capita daily cases map. testing new color scheme.
44 days ago: changed to daily mortaility tracking from ratio of overall totals.
37 days ago: added trend line to state charts.
9 days ago: decreased max value of Daily Cases per 100k State map.
2 days ago: increased max total state cases to 2,000,000 as California passes 1.5Million diagnosed cases.

Appendix: Methods

Disease data are sourced from the NYTimes Github Repo. Population data are sourced from the US Census census.gov

Case growth is assumed to follow a linear-partial differential equation. This type of model is useful in populations where there is still very low immunity and high susceptibility.

\[\frac{\partial}{\partial t} cases(t, t_d) = a \times cases(t, t_d) \] \(cases(t)\) is the number of active cases at \(t\) dependent on recent history, \(t_d\). The constant \(a\) and has units of \(time^{-1}\) and is typically computed on a daily basis

Solution results are often expressed in terms of the Effective Reproduction Rate \(R_e\), where \[a \space = \space ln(R_e).\]

\(R_e\) has a simple interpretation; when \(R_e \space > \space 1\) the number of \(cases(t)\) increases (exponentially) while when \(R_e \space < \space 1\) the number of \(cases(t)\) decreases.

Practically, computing \(a\) can be extremely complicated, depending on how functionally it is related to history \(t_d\). And guessing functional forms can be as much art as science. To avoid that, let’s keep things simple…

Assuming a straight-forward flat time of latent infection \(t_d\) = 12 days, with \[f(t) = \int_{t - t_d}^{t}cases(t')\; dt' ,\] \(R_e\) reduces to a simple computation

\[R_e(t) = \frac{cases(t)}{\int_{t - t_d}^{t}cases(t')\; dt'} \times t_d .\]

Typical range of \(t_d\) range \(7 \geq t_d \geq 14\). The only other numerical treatment is, in order to reduce noise the data, I smooth case data with a reticulated spline to compute derivatives.


DISCLAIMER: Results are for entertainment purposes only. Please consult local authorities for official data and forecasts.