-
Notifications
You must be signed in to change notification settings - Fork 92
/
python.Rmd
140 lines (93 loc) · 3.58 KB
/
python.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
---
title: "Python"
output: rmarkdown::html_vignette
vignette: >
%\VignetteIndexEntry{Python}
%\VignetteEngine{knitr::rmarkdown}
%\VignetteEncoding{UTF-8}
---
[![](https://img.shields.io/pypi/v/covid19dh.svg?color=brightgreen)](https://pypi.org/pypi/covid19dh/) [![](https://img.shields.io/pypi/dm/covid19dh.svg?color=blue)](https://pypi.org/pypi/covid19dh/) [![](https://img.shields.io/github/stars/covid19datahub/python?style=social)](https://github.com/covid19datahub/python)
## Setup and usage
Install from [pip](https://pypi.org/project/covid19dh/) with
```py
pip install covid19dh
```
Importing the main function `covid19()`
```py
from covid19dh import covid19
x, src = covid19()
```
Package is regularly updated. Update with
```bash
pip install --upgrade covid19dh
```
## Return values
The function `covid19()` returns 2 pandas dataframes:
* the data and
* references to the data sources.
## Parametrization
### Country
List of country names (case-insensitive) or ISO codes (alpha-2, alpha-3 or numeric). The list of ISO codes can be found [here](https://github.com/covid19datahub/COVID19/blob/master/inst/extdata/src.csv).
Fetching data from a particular country:
```py
x, src = covid19("USA") # Unites States
```
Specify multiple countries at the same time:
```py
x, src = covid19(["ESP","PT","andorra",250])
```
If `country` is omitted, the whole dataset is returned:
```py
x, src = covid19()
```
### Raw data
Logical. Skip data cleaning? Default `True`. If `raw=False`, the raw data are cleaned by filling missing dates with `NaN` values. This ensures that all locations share the same grid of dates and no single day is skipped. Then, `NaN` values are replaced with the previous non-`NaN` value or `0`.
```py
x, src = covid19(raw = False)
```
### Date filter
Date can be specified with `datetime.datetime`, `datetime.date` or as a `str` in format `YYYY-mm-dd`.
```py
from datetime import datetime
x, src = covid19("SWE", start = datetime(2020,4,1), end = "2020-05-01")
```
### Level
Integer. Granularity level of the data:
1. Country level
2. State, region or canton level
3. City or municipality level
```py
from datetime import date
x, src = covid19("USA", level = 2, start = date(2020,5,1))
```
### Cache
Logical. Memory caching? Significantly improves performance on successive calls. By default, using the cached data is enabled.
Caching can be disabled (e.g. for long running programs) by:
```py
x, src = covid19("FRA", cache = False)
```
### Vintage
Logical. Retrieve the snapshot of the dataset that was generated at the `end` date instead of using the latest version. Default `False`.
To fetch e.g. US data that were accessible on *22th April 2020* type
```py
x, src = covid19("US", end = "2020-04-22", vintage = True)
```
The vintage data are collected at the end of the day, but published with approximately 48 hour delay, once the day is completed in all the timezones.
Hence if `vintage = True`, but `end` is not set, warning is raised and `None` is returned.
```py
x, src = covid19("USA", vintage = True) # too early to get today's vintage
```
```
UserWarning: vintage data not available yet
```
### Citations
The data sources are returned as second value.
```py
from covid19dh import covid19
x, src = covid19("USA")
print(src)
```
## Star the repo
<a class="github-button" href="https://github.com/covid19datahub/python" data-icon="octicon-star" data-size="large" data-show-count="true" aria-label="Star covid19datahub/python on GitHub">Star</a>
<script async defer src="https://buttons.github.io/buttons.js"></script>
`r gsub("^# ", "## ", readr::read_file('../LICENSE.md'))`