Skip to content
Snippets Groups Projects
Commit 281ef1c7 authored by Chandrasekhar Ramakrishnan's avatar Chandrasekhar Ramakrishnan Committed by renku 0.9.1
Browse files

renku rerun data/covidtracking/states-metadata.json data/covidtracking/states-daily.json

parent 2ce9fb0d
No related branches found
No related tags found
No related merge requests found
class: Workflow
cwlVersion: v1.0
hints: []
inputs:
input_1:
default: states-daily.json
streamable: false
type: string
input_2:
default: out_folder
streamable: false
type: string
input_3:
default: data/covidtracking
streamable: false
type: string
input_4:
default:
class: File
path: ../../notebooks/process/download-covidtracking-data.ipynb
streamable: false
type: File
input_5:
default: runs/download-covidtracking-data.runs.ipynb
streamable: false
type: string
input_6:
default: states-metadata.json
streamable: false
type: string
outputs:
output_2:
outputSource: step_2/output_0
streamable: false
type: File
output_3:
outputSource: step_2/output_1
streamable: false
type: Directory
requirements: []
steps:
step_1:
in:
filename: input_1
input_directory: step_2/output_1
out:
- output_file
run:
arguments: []
baseCommand:
- 'true'
class: CommandLineTool
cwlVersion: v1.0
hints: []
inputs:
filename:
default: states-daily.json
streamable: false
type: string
input_directory:
streamable: false
type: Directory
outputs:
output_file:
outputBinding:
glob: $(inputs.filename)
streamable: false
type: File
permanentFailCodes: []
requirements:
- &id001
class: InlineJavascriptRequirement
- &id002
class: InitialWorkDirRequirement
listing: $(inputs.input_directory.listing)
successCodes: []
temporaryFailCodes: []
step_2:
in:
input_1: input_2
input_2: input_3
input_3: input_4
input_4: input_5
out:
- output_1
- output_0
run: ff5f474d38144c5d882c0036bd1059c2_papermill.cwl
step_3:
in:
filename: input_6
input_directory: step_2/output_1
out:
- output_file
run:
arguments: []
baseCommand:
- 'true'
class: CommandLineTool
cwlVersion: v1.0
hints: []
inputs:
filename:
default: states-metadata.json
streamable: false
type: string
input_directory:
streamable: false
type: Directory
outputs:
output_file:
outputBinding:
glob: $(inputs.filename)
streamable: false
type: File
permanentFailCodes: []
requirements:
- *id001
- *id002
successCodes: []
temporaryFailCodes: []
source diff could not be displayed: it is stored in LFS. Options to address this: view the blob.
source diff could not be displayed: it is stored in LFS. Options to address this: view the blob.
%% Cell type:code id: tags: %% Cell type:code id: tags:
``` python ``` python
import requests import requests
import os import os
import pandas as pd import pandas as pd
``` ```
%% Cell type:code id: tags:parameters %% Cell type:code id: tags:parameters
``` python ``` python
out_folder = "../data/covidtracking/" out_folder = "../data/covidtracking/"
PAPERMILL_OUTPUT_PATH = None PAPERMILL_OUTPUT_PATH = None
``` ```
%% Cell type:code id: tags:injected-parameters %% Cell type:code id: tags:injected-parameters
``` python ``` python
# Parameters # Parameters
PAPERMILL_INPUT_PATH = "notebooks/process/download-covidtracking-data.ipynb" PAPERMILL_INPUT_PATH = "/tmp/tq93huw7/notebooks/process/download-covidtracking-data.ipynb"
PAPERMILL_OUTPUT_PATH = "runs/download-covidtracking-data.runs.ipynb" PAPERMILL_OUTPUT_PATH = "runs/download-covidtracking-data.runs.ipynb"
out_folder = "./data/covidtracking/" out_folder = "data/covidtracking"
``` ```
%% Cell type:markdown id: tags: %% Cell type:markdown id: tags:
# Download state metadata # Download state metadata
Download a dataset of URLs for data for each US state and several territories. See [Google Doc](https://docs.google.com/spreadsheets/d/18oVRrHj3c183mHmq3m89_163yuYltLNlOmPerQ18E8w/htmlview?sle=true). Download a dataset of URLs for data for each US state and several territories. See [Google Doc](https://docs.google.com/spreadsheets/d/18oVRrHj3c183mHmq3m89_163yuYltLNlOmPerQ18E8w/htmlview?sle=true).
%% Cell type:code id: tags: %% Cell type:code id: tags:
``` python ``` python
url = 'http://covidtracking.com/api/states/info' url = 'http://covidtracking.com/api/states/info'
r = requests.get(url, allow_redirects=True) r = requests.get(url, allow_redirects=True)
states_metadata_json = r.content states_metadata_json = r.content
``` ```
%% Cell type:code id: tags: %% Cell type:code id: tags:
``` python ``` python
# save the result # save the result
if PAPERMILL_OUTPUT_PATH: if PAPERMILL_OUTPUT_PATH:
out_path = os.path.join(out_folder, 'states-metadata.json') out_path = os.path.join(out_folder, 'states-metadata.json')
with open(out_path, 'wb') as f: with open(out_path, 'wb') as f:
f.write(states_metadata_json) f.write(states_metadata_json)
``` ```
%% Cell type:code id: tags: %% Cell type:code id: tags:
``` python ``` python
metadata_df = pd.read_json(states_metadata_json) metadata_df = pd.read_json(states_metadata_json)
print(len(metadata_df), "states and territories have metadata") print(len(metadata_df), "states and territories have metadata")
metadata_df.head(2) metadata_df.head(2)
``` ```
%% Output %% Output
56 states and territories have metadata 56 states and territories have metadata
state dataSite \ state covid19SiteOld \
0 AK http://dhss.alaska.gov/dph/Epi/id/Pages/COVID-... 0 AK http://dhss.alaska.gov/dph/Epi/id/Pages/COVID-...
1 AL http://www.alabamapublichealth.gov/infectiousd... 1 AL http://www.alabamapublichealth.gov/infectiousd...
covid19Site twitter \ covid19Site covid19SiteSecondary \
0 http://dhss.alaska.gov/dph/Epi/id/Pages/COVID-... @Alaska_DHSS 0 http://dhss.alaska.gov/dph/Epi/id/Pages/COVID-... NaN
1 http://www.alabamapublichealth.gov/infectiousd... @alpublichealth 1 https://alpublichealth.maps.arcgis.com/apps/op... NaN
pui pum notes name twitter pui pum \
0 All data False Unclear if their reported number means "person... Alaska 0 @Alaska_DHSS All data False
1 No data False Last negative count from 3/16. Alabama 1 @alpublichealth No data False
notes name
0 Unclear if their reported number means "person... Alaska
1 Last negative count from 3/16. Alabama
%% Cell type:markdown id: tags: %% Cell type:markdown id: tags:
# Download daily state data # Download daily state data
%% Cell type:code id: tags: %% Cell type:code id: tags:
``` python ``` python
url = 'https://covidtracking.com/api/states/daily' url = 'https://covidtracking.com/api/states/daily'
r = requests.get(url, allow_redirects=True) r = requests.get(url, allow_redirects=True)
states_daily_json = r.content states_daily_json = r.content
``` ```
%% Cell type:code id: tags: %% Cell type:code id: tags:
``` python ``` python
# save the result # save the result
if PAPERMILL_OUTPUT_PATH: if PAPERMILL_OUTPUT_PATH:
out_path = os.path.join(out_folder, 'states-daily.json') out_path = os.path.join(out_folder, 'states-daily.json')
with open(out_path, 'wb') as f: with open(out_path, 'wb') as f:
f.write(states_daily_json) f.write(states_daily_json)
``` ```
%% Cell type:code id: tags: %% Cell type:code id: tags:
``` python ``` python
data_df = pd.read_json(states_daily_json) data_df = pd.read_json(states_daily_json)
print(len(data_df), "data points") print(len(data_df), "data points")
data_df.head(2) data_df.head(2)
``` ```
%% Output %% Output
701 data points 757 data points
date state positive negative pending death total \ date state positive negative pending death total \
0 20200318 AK 6.0 406.0 NaN NaN 412.0 0 20200319 AK 6 400.0 NaN NaN 406
1 20200318 AL 46.0 28.0 NaN 0.0 74.0 1 20200319 AL 68 28.0 NaN 0.0 96
dateChecked dateChecked
0 2020-03-18T20:00:00Z 0 2020-03-19T20:00:00Z
1 2020-03-18T20:00:00Z 1 2020-03-19T20:00:00Z
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment