1 First Join of the Datasets

In first place, we downloaded the data and count the amount of rows that every country in a single date. The following countries show more than one entry in each single date:

#xaringan::inf_mr()
jhudata <- read.csv("https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_confirmed_global.csv", sep=",", encoding="UTF-8", header=T)

jhudata %>%
  tidyr::pivot_longer(cols=starts_with("X"), names_to = "dates", values_to = "sum")%>%
  dplyr::rename("country"="Country.Region")%>%
  dplyr::mutate(dates=stringr::str_sub(dates,2,12))%>%
  dplyr::mutate(dates=lubridate::parse_date_time(as.character(dates),"%m.%d.%y"))%>%
#:#:#:#:#:#:#: Nov 2020- filter until october 2020
  dplyr::filter(dates<lubridate::parse_date_time(as.character("11.01.2020"),"%m.%d.%y")) %>% 
#:#:#:#:#:#:#:#:
  dplyr::mutate(dates=as.Date(as.character(dates)))%>%
  dplyr::arrange(country, dates)%>%
  dplyr::group_by(country,dates)%>%
  add_tally() %>%   #cuento la cantidad de entradas por día que tiene cada país
  ungroup()%>%  
  dplyr::filter(n>1)%>% #filtro a los que tienen más de una entrada en cada fecha
  dplyr::group_by(country)%>%
  dplyr::summarise(n=n())%>%
    datatable(caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        'Table 1: ', htmltools::em('Countries with more than one entry by date')))
## `summarise()` ungrouping output (override with `.groups` argument)


We explored these countries, and found that Australia, Canada, China & France had the information disaggregated by provinces. In contrast, United Kingdom, Netherlands & Denmark had an entry that seems to be the total amount of cases by date. For the former countries, we collapsed the information by getting the sum of the cases by province; but for the latter, we dropped the reports regarding provinces or regions. This let us have one a dataset with one entry by country and date.


coronavirus<-
jhudata %>%
  tidyr::pivot_longer(cols=starts_with("X"), names_to = "dates", values_to = "sum")%>%
  dplyr::rename("country"="Country.Region")%>%
  dplyr::mutate(dates=stringr::str_sub(dates,2,12))%>%
  dplyr::mutate(dates=lubridate::parse_date_time(as.character(dates),"%m.%d.%y"))%>%
#:#:#:#:#:#:#: Nov 2020- filter until october 2020
  dplyr::filter(dates<lubridate::parse_date_time(as.character("11.01.2020"),"%m.%d.%y")) %>% 
#:#:#:#:#:#:#:#:
  dplyr::mutate(dates=as.Date(as.character(dates)))%>%
  dplyr::arrange(country, dates)%>%
  #elimino a los casos distintos
  dplyr::mutate(descarte=case_when(country=="United Kingdom"&Province.State!=""~1,
                          country=="Netherlands"&Province.State!=""~1,
                          country=="Denmark"&Province.State!=""~1,
                          TRUE~0))%>%
  dplyr::filter(descarte==0)%>%
  #genero una suma para cada fecha por país
  dplyr::group_by(country, dates)%>%
  dplyr::summarise(cases=sum(sum,na.rm=T))%>%
  dplyr::ungroup()%>%
  dplyr::group_by(country)%>%
  dplyr::mutate(ndays_zero=row_number())%>%
 # dplyr::filter(cases>0)%>%
  dplyr::ungroup()


Next, we added a 3-letter ISO format to every country and a date column in ISO 8601 format (YYYY-MM_DD). We used data available from the following [webpage] (https://ourworldindata.org/coronavirus-source-data). However, some countries did not match any of the available labels, as can be seen in the following table. For more information about the official, please go to the following link.


owid_covid_data <- readr::read_csv("https://raw.githubusercontent.com/owid/covid-19-data/master/public/data/owid-covid-data.csv")%>%
#:#:#:#:#:#:#: Nov 2020- filter until october 2020
  dplyr::filter(date<as.Date("2020-11-01")) %>% 
#:#:#:#:#:#:#:#:
  distinct(iso_code,.keep_all=T) 
## Parsed with column specification:
## cols(
##   .default = col_double(),
##   iso_code = col_character(),
##   continent = col_character(),
##   location = col_character(),
##   date = col_date(format = ""),
##   icu_patients = col_logical(),
##   icu_patients_per_million = col_logical(),
##   hosp_patients = col_logical(),
##   hosp_patients_per_million = col_logical(),
##   weekly_icu_admissions = col_logical(),
##   weekly_icu_admissions_per_million = col_logical(),
##   weekly_hosp_admissions = col_logical(),
##   weekly_hosp_admissions_per_million = col_logical(),
##   total_tests = col_logical(),
##   new_tests = col_logical(),
##   total_tests_per_thousand = col_logical(),
##   new_tests_per_thousand = col_logical(),
##   new_tests_smoothed = col_logical(),
##   new_tests_smoothed_per_thousand = col_logical(),
##   tests_per_case = col_logical(),
##   positive_rate = col_logical()
##   # ... with 1 more columns
## )
## See spec(...) for full column specifications.
#Aplicando distinct, nos permite que no se generen valroes duplicados en la combinación de bases de datos.

coronavirus%>%
    dplyr::left_join(dplyr::select(owid_covid_data,location,iso_code), by=c("country"="location"))%>% dplyr::filter(is.na(iso_code))%>% group_by(country) %>% 
  dplyr::summarise("% w/ missing values"=scales::percent(sum(is.na(iso_code))/max(ndays_zero)))%>%
    datatable(caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        'Table 2: ', htmltools::em('Not matched countries w/ Owid Data')))
## `summarise()` ungrouping output (override with `.groups` argument)
  #combinar con otra base de datos que tiene los iso. 

earlyDate<-min(coronavirus$dates)


We decided to work with some of these countries, particularly those with a greater population, testings or more relevant public policies. That is why we only changed the names of “US” “South Korea”, “Taiwan”, “Congo”Congo (Kinshasa)“,”Democratic Congo“,”Burma" and “Czechia”. The rest of countries will be dropped, since they were not eligible for further analysis. The Diamond Princess & the MS Zaandam are ships. Also, we had information of China since January 22, 52 days after the first case in Dec. 1st of 2019. We added 52 days to China.


coronavirus%>%
    dplyr::mutate(country=case_when(country=="Korea, South"~"South Korea",
                                    country=="Taiwan*"~"Taiwan",
                                    country=="Congo (Kinshasa)"~"Democratic Republic of Congo",
                                    country=="Congo (Brazzaville)"~"Congo",
                                    country=="Cabo Verde"~"Cape Verde",
                                    country=="Czechia"~"Czech Republic",
                                    country=="Eswatini"~"Swaziland",
                                    country=="Timor-Leste"~"Timor",
                                    country=="Burma"~"Myanmar",
                                    country=="North Macedonia"~"Macedonia",
                                    
                                    
                                    country=="US"~"United States",TRUE~country))%>%
    #combinar con otra base de datos que tiene los iso. 
    dplyr::left_join(owid_covid_data,location, by=c("country"="location"), suffix=c("","owid"))%>% 
    dplyr::filter(!is.na(iso_code))%>% #me baja de 32,148 a 30,096
    #group_by(country) %>% summarise(perc_days_with_nas=sum(is.na(iso_code))/max(ndays))%>%datatable()
    assign("coronavirus_iso3c",., envir = .GlobalEnv)

corona_no_day_zero<-
    coronavirus_iso3c%>%
    dplyr::group_by(iso_code)%>%
    dplyr::filter(cases>0)%>%
    #assigned china +52 days since 01-12-2019
    dplyr::mutate(ndays=case_when(iso_code=="CHN"~as.numeric(row_number())+52,
                                  TRUE~as.numeric(row_number())))
  
  coronavirus_iso3c%>%
    dplyr::left_join(select(corona_no_day_zero,iso_code,dates,ndays),by=c("iso_code"="iso_code","dates"="dates"))%>%
    dplyr::select(country,dates,cases,ndays_zero,iso_code,continent,population,population_density,
                  median_age,aged_65_older,aged_70_older,gdp_per_capita,extreme_poverty,
                  diabetes_prevalence,female_smokers,male_smokers,handwashing_facilities,hospital_beds_per_thousand,
                  life_expectancy,ndays)%>%
    assign("coronavirus_iso3c",., envir = .GlobalEnv)


WHO data may have errors regarding cumulative number of cases, as shown below. It is important to solve these type of errors somehow.


coronavirus_iso3c%>%
  dplyr::arrange(iso_code, dates)%>%
  dplyr::group_by(iso_code)%>%
  dplyr::mutate(lag_cases=dplyr::lag(cases),
                lag_dates=dplyr::lag(dates),
                diff_cases=cases-lag_cases)%>%
  dplyr::filter(diff_cases<0)%>%
  dplyr::select(country,iso_code,dates,cases,lag_cases,lag_dates)%>%
  datatable( filter = 'top',caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 3: ', htmltools::em('Problems with serial report of New Cases by Countries')))

2 Deaths JHU

We joined the confirmed cases with WHO Datasets.


jhudata <- read.csv("https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_deaths_global.csv", sep=",", encoding="UTF-8", header=T)

jhudata %>%
  tidyr::pivot_longer(cols=starts_with("X"), names_to = "dates", values_to = "sum")%>%
  dplyr::rename("country"="Country.Region")%>%
  dplyr::mutate(dates=stringr::str_sub(dates,2,12))%>%
  dplyr::mutate(dates=lubridate::parse_date_time(as.character(dates),"%m.%d.%y"))%>%
#:#:#:#:#:#:#: Nov 2020- filter until october 2020
  dplyr::filter(dates<lubridate::parse_date_time(as.character("11.01.2020"),"%m.%d.%y")) %>% 
#:#:#:#:#:#:#:#:
  dplyr::mutate(dates=as.Date(as.character(dates)))%>%
  dplyr::arrange(country, dates)%>%
  dplyr::group_by(country,dates)%>%
  add_tally() %>%   #cuento la cantidad de entradas por día que tiene cada país
  ungroup()%>%  
  dplyr::filter(n>1)%>% #filtro a los que tienen más de una entrada en cada fecha
  dplyr::group_by(country)%>%
  dplyr::summarise(n=n())%>%
    datatable(caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 4: ', htmltools::em('Countries with more than one entry by date, data of deaths')))
## `summarise()` ungrouping output (override with `.groups` argument)


We explored these countries, and found that Australia, Canada, China France had the information disaggregated by provinces. In contrast, United Kingdom, Netherlands & Denmark had an entry that seems to be the total amount of cases by date. For the former countries, we collapsed the information by getting the sum of the cases by province; but for the latter, we dropped the reports regarding provinces or regions. This let us have one a dataset with one entry by country and date.


coronavirus_deaths<-
  jhudata %>%
  tidyr::pivot_longer(cols=starts_with("X"), names_to = "dates", values_to = "sum")%>%
  dplyr::rename("country"="Country.Region")%>%
  dplyr::mutate(dates=stringr::str_sub(dates,2,12))%>%
  dplyr::mutate(dates=lubridate::parse_date_time(as.character(dates),"%m.%d.%y"))%>%
#:#:#:#:#:#:#: Nov 2020- filter until october 2020
  dplyr::filter(dates<lubridate::parse_date_time(as.character("11.01.2020"),"%m.%d.%y")) %>% 
#:#:#:#:#:#:#:#:
  dplyr::mutate(dates=as.Date(as.character(dates)))%>%
  dplyr::arrange(country, dates)%>%
  #elimino a los casos distintos
  dplyr::mutate(descarte=case_when(country=="United Kingdom"&Province.State!=""~1,
                                   country=="Netherlands"&Province.State!=""~1,
                                   country=="Denmark"&Province.State!=""~1,
                                   TRUE~0))%>%
  dplyr::filter(descarte==0)%>%
  dplyr::mutate(country=case_when(country=="Korea, South"~"South Korea",
                                country=="Taiwan*"~"Taiwan",
                                country=="Congo (Kinshasa)"~"Democratic Republic of Congo",
                                country=="Congo (Brazzaville)"~"Congo",
                                country=="Cabo Verde"~"Cape Verde",
                                country=="Czechia"~"Czech Republic",
                                country=="Eswatini"~"Swaziland",
                                country=="Timor-Leste"~"Timor",
                                country=="Burma"~"Myanmar",
                                country=="North Macedonia"~"Macedonia",
                                
                                country=="US"~"United States",TRUE~country))%>%
  #genero una suma para cada fecha por país
  dplyr::group_by(country, dates)%>%
  dplyr::summarise(cases=sum(sum,na.rm=T))%>%
  dplyr::ungroup()%>%
  dplyr::group_by(country)%>%
  dplyr::mutate(ndays_zero=row_number())%>%
  # dplyr::filter(cases>0)%>%
  dplyr::rename("cases_deaths"="cases")%>%
  dplyr::ungroup()
## `summarise()` regrouping output by 'country' (override with `.groups` argument)
if(
coronavirus_deaths%>%
  dplyr::arrange(country, dates)%>%
  dplyr::group_by(country,dates)%>%
  add_tally() %>%   #cuento la cantidad de entradas por día que tiene cada país
  ungroup()%>%  
  dplyr::filter(n>1)%>% #filtro a los que tienen más de una entrada en cada fecha
  dplyr::group_by(country)%>%
  dplyr::summarise(n=n())%>%nrow()
>0){"still problems with duplicated data"}
## `summarise()` ungrouping output (override with `.groups` argument)


Next, we merged this dataset with our consolidated dataset. However, must notice that, similar to the dataset of cases, some countries could not be matched, as can be seen in the following Table.


coronavirus_deaths%>%
  dplyr::left_join(coronavirus_iso3c, by="country", suffix=c("","_cons"))%>% 
  dplyr::filter(is.na(iso_code))%>% 
  group_by(country) %>% 
  dplyr::summarise("% w/ missing values"=scales::percent(sum(is.na(iso_code))/max(ndays_zero)))%>%
    datatable(caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        'Table 5: ', htmltools::em('Not matched countries of Deaths w/ Consolidated Dataset')))
## `summarise()` ungrouping output (override with `.groups` argument)
  #combinar con otra base de datos que tiene los iso. 
earlyDate_deaths<-min(coronavirus_deaths$dates)


coronavirus_iso3c%>%
  #combinar con otra base de datos que tiene los iso. 
  dplyr::left_join(coronavirus_deaths, by=c("country","dates"), suffix=c("","_deaths"))%>% 
  #group_by(country) %>% summarise(perc_days_with_nas=sum(is.na(iso_code))/max(ndays))%>%datatable()
  dplyr::mutate(text= paste("Country:", country,"<br> Dates:", dates,"<br> Cum.cases:",formatC(cases, format="f", big.mark=",", digits=0),"<br> No. Days Since 1st Case:",ndays, "<br> Cum.deaths:",formatC(cases_deaths, format="f", big.mark=",", digits=0)))%>%
  assign("coronavirus_iso3c_1",., envir = .GlobalEnv)
Sys.setlocale(category = "LC_ALL", locale = "english")
## [1] "LC_COLLATE=English_United States.1252;LC_CTYPE=English_United States.1252;LC_MONETARY=English_United States.1252;LC_NUMERIC=C;LC_TIME=English_United States.1252"
gg<- ggplot(data=coronavirus_iso3c_1,aes(x= dates, y=log10(cases_deaths),group=iso_code, text= text, color=iso_code))+
   geom_line()+
  sjPlot::theme_sjplot2() +
theme(panel.border = element_blank(),
      panel.grid.major = element_blank(),
      panel.grid.minor = element_blank(),
      axis.line = element_line(colour = "black"),
      plot.margin = margin(5.5, 40, 5.5, 5.5))+
    #scale_x_date(date_breaks= "14 days", date_minor_breaks = "7 days", date_labels = "%m/%d") +
    theme(plot.caption = element_text(hjust = 0, face= "italic"))+
    theme(plot.tag.position =  c(.81,0.01),
          plot.tag = element_text(hjust = -.05, size=8,
                                  margin = margin(l = 10)))+
   # xlim(c(earlyDate,lastDate))+
   # scale_y_log10(labels = scales::trans_format("log10", scales::math_format(10^.x)))+
    theme(legend.position = "none", axis.title.x = element_blank())

ggplotly(gg,tooltip = "text", dynamicTicks=T) 


WHO data does not show errors regarding cumulative number of deaths, as shown below.


coronavirus_iso3c_1%>%
  dplyr::arrange(iso_code, dates)%>%
  dplyr::group_by(iso_code)%>%
  dplyr::mutate(lag_cases=dplyr::lag(cases_deaths),
                lag_dates=dplyr::lag(cases_deaths),
                diff_cases=cases-lag_cases)%>%
  dplyr::filter(diff_cases<0)%>%
  dplyr::select(country,iso_code,dates,cases,lag_cases,lag_dates)%>%
  datatable(caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 6: ', htmltools::em('Problems with serial report of New Deaths by Countries')))
if(
coronavirus_iso3c_1%>%
    dplyr::mutate(error_no_days=ifelse(ndays_zero!=ndays_zero_deaths,1,0))%>%
    dplyr::filter(error_no_days==1)%>% nrow()>0
){"there are some cases with different days available in datasets of deaths and new cases"}

3 Oxford Dataset

Academics from the University of Oxford have launched a dataset that track government responses (https://www.bsg.ox.ac.uk/sites/default/files/2020-06/Lockdown%20Rollback%20Checklist%20v4.pdf). This tool tracks the following indicators: - school closure; - workplace closures; - public event cancellation; - public transport closure; - public information campaigns; - restriction on internal movement; - international travel controls; - fiscal measures; - monetary measures; - emergency investment in healthcare; - investment in vaccines.

Then, they generated an index that compares the stringency of policy responses by countries. Despite the ‘Stringency Index’ is not a direct measure of “the appropriateness or effectiveness of a country’s response” to the evolution of contagion, may be useful to understand measures that could be effective in determined periods and countries.


library(readr)
OxCGRT_latest <- read_csv("https://raw.githubusercontent.com/OxCGRT/covid-policy-tracker/master/data/OxCGRT_latest.csv")%>%
                  dplyr::mutate(Date=as.Date(as.character(Date), "%Y%m%d"))%>% 
                  janitor::clean_names() %>% 
#:#:#:#:#:#:#: Nov 2020- filter until october 2020
  dplyr::filter(date<"2020-11-01") 
## Parsed with column specification:
## cols(
##   .default = col_double(),
##   CountryName = col_character(),
##   CountryCode = col_character(),
##   RegionName = col_logical(),
##   RegionCode = col_logical(),
##   M1_Wildcard = col_logical()
## )
## See spec(...) for full column specifications.
#:#:#:#:#:#:#:#:
    
#oxf_npi<- download_oxford_npi_data(cached = TRUE, silent = TRUE)
#oxf_npi<- https://raw.githubusercontent.com/OxCGRT/covid-policy-tracker/master/data/OxCGRT_latest.csv

OxCGRT_latest_join<-
    OxCGRT_latest%>%
      #dplyr::group_by(CountryCode, Date)%>% 
      dplyr::select(country_code,country_name, date,stringency_index)
Sys.setlocale(category = "LC_ALL", locale = "english")
## [1] "LC_COLLATE=English_United States.1252;LC_CTYPE=English_United States.1252;LC_MONETARY=English_United States.1252;LC_NUMERIC=C;LC_TIME=English_United States.1252"
plot_ly(
  x     = ~date, y = ~stringency_index, 
  color = ~country_code,
  data  = OxCGRT_latest,
  type = 'scatter',
        mode = 'lines')%>%
  layout(showlegend = FALSE)%>%
 # highlight(on = "plotly_click",off = "plotly_doubleclick")
  #highlight(on = "plotly_hover", off = "plotly_deselect", color = "red")
  highlight(on="plotly_hover",off="plotly_deselect",color="blue",opacityDim=.2, persistent = F)%>%
  layout(xaxis=list(spikethickness=4, spikecolor="gray50"))%>%
  layout(scene = list(
      xaxis = list(title = "Date"),
      yaxis = list(title = "Stringency Index")))

Figure 2. Linear Trends of Stringency Index by Country

#BASE DE DATOS OXFORD Y CORONAVIRUS. UNION
coronavirus_iso3c_1%>%
    dplyr::mutate(iso_code= ifelse(iso_code=="OWID_KOS","RKS", as.character(iso_code)))%>%
    dplyr::left_join(dplyr::select(OxCGRT_latest_join,-country_name),by=c("iso_code"="country_code","dates"="date"))%>%
    dplyr::rename("stringency_ind_oxf"="stringency_index")->
                "coronavirus_iso3c_2"

unmatched_2_no_inf_on_quarantene<-
  coronavirus_iso3c_2%>% 
    dplyr::filter(is.na(stringency_ind_oxf))%>% 
    dplyr::group_by(iso_code)%>% 
    dplyr::summarise(N=n(), last_date=max(dates),first_date=min(dates))%>%
    dplyr::filter(N>=100)%>%
    dplyr::ungroup()%>%
    distinct(iso_code)%>%
    unlist()%>%
  as.character()
## `summarise()` ungrouping output (override with `.groups` argument)


In case of Kosovo, we changed the ISO 3 code created by OWID dataset (OWID_KOS) in order to match with Oxford (RKS), but we must take note that Kosovo could be identified with the letters “XKO”. In contrast, we selected countries that did not had information on specific dates. These missing values tend to be present on most recent dates. Possibly due to lack of updates on Oxford datasets.


#para ver el comportamiento de los países en iso3 que no calzan con la base de datos de las medidas de oxford
#
#coronavirus_iso3c_2%>% 
#  dplyr::filter(iso_code %in% unmatched_2_no_inf_on_quarantene)%>% View()
coronavirus_iso3c_2%>% 
    dplyr::filter(is.na(stringency_ind_oxf))%>% 
    dplyr::group_by(iso_code,country)%>% 
    dplyr::summarise(N=n(), first_date=min(dates),last_date=max(dates))%>%
    dplyr::filter(N<=100,N>1)%>%
    dplyr::arrange(desc(N))%>%
    datatable(filter = 'top',colnames = c('ISO 3-letter' =2,'Country' = 3,'Data Points' = 4),
              caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 7: ', htmltools::em('Dates with missing values on each country in Stringency Index as a result of the match')),
        options=list(
  initComplete = JS(
        "function(settings, json) {",
        "$(this.api().tables().body()).css({'font-size': '80%'});",
        "}")))
## `summarise()` regrouping output by 'iso_code' (override with `.groups` argument)


Reversely, the following countries did not join with our database. Most of these countries are still in a complicated position in terms of geopolitical matters.


OxCGRT_latest_join%>%
    dplyr::anti_join(coronavirus_iso3c_2,by=c("country_code"="iso_code","date"="dates"))%>%
    dplyr::filter(date>="2020-01-22")%>%
    group_by(country_code,country_name)%>%
    dplyr::summarise(N=n(),first_date=min(date),last_date=max(date))%>%
    dplyr::filter(N>10)%>%
      datatable(filter = 'top', colnames = c('ISO 3-letter' =2,'Country' = 3,'Data Points' = 4),
                caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 8: ', htmltools::em('Countries of Oxford Dataset that did not match with the merged database')),
        options=list(
  initComplete = JS(
        "function(settings, json) {",
        "$(this.api().tables().body()).css({'font-size': '80%'});",
        "}")))
## `summarise()` regrouping output by 'country_code' (override with `.groups` argument)
#"https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_deaths_global.csv"
#coronavirus%>% dplyr::filter(grepl("Guam",country)), por lo visto no hay ninguno

#OxCGRT_latest_join%>%
    #dplyr::mutate(country_code= dplyr::case_when(country_code=="ABW"~"NLD",
    #                                             country_code=="AIA"~"GBR",
    #                                             country_code=="BMU"~"GBR",
    #                                             country_code=="CYM"~"GBR",
    #                                             country_code=="FLK"~"GBR",
    #                                             country_code=="GIB"~"GBR",
    #                                             country_code=="GRL"~"DNK",
    #                                             country_code=="GUM"~"USA",
    #                                             country_code=="MAC"~"CHN",
    #                                             country_code=="HKG"~"CHN",
    #                                             country_code=="MSR"~"GBR",
    #                                             country_code=="PCN"~"GBR",
    #                                             country_code=="PRI"~"USA",
    #                                             country_code=="TCA"~"GBR",
    #                                             country_code=="VGB"~"GBR",
    #                                             country_code=="VIR"~"USA"
    #                                             TRUE~country_code)) %>% 
#BASE DE DATOS OXFORD Y CORONAVIRUS. UNION
#coronavirus_iso3c_1%>%
#    dplyr::mutate(iso_code= ifelse(iso_code=="OWID_KOS","RKS", as.character(iso_code)))%>%
#    dplyr::left_join(dplyr::select(OxCGRT_latest_join,-country_name),by=c("iso_code"="country_code","dates"="date"))%>%
#    dplyr::rename("stringency_ind_oxf"="stringency_index")->
#                "coronavirus_iso3c_2"


As seen in the Table above, some countries did not appear in the JHU database. Some of them were islands or departaments of other countries (UK, USA or China), and some others such as Vanuatu had no information in JHU database.


Once the dataset is merged, we may see that some variables still have missing data in different variables (Table 10). Most of them are available or not by country, because this measure was not available for the whole country (time-invariant variable), and not only for a single or few days, excepting for stringency_ind_oxf, which had missing values because of the updates, as seen in Table 7.


coronavirus_iso3c_2%>%
  dplyr::select(-ndays_zero_deaths, -text, -ndays)%>%
  dplyr::group_by(country) %>% 
    summarise_at(vars(population:stringency_ind_oxf),~scales::percent(sum(is.na(.))/n()))%>%
  knitr::kable(.,format = "html", format.args = list(decimal.mark = ".", big.mark = ","),
               caption = paste0("Table 9. Percentage of Missing data in the Different Time Points By Country"),
               align =rep('c', 101)) %>%
  kableExtra::kable_styling(bootstrap_options = c("striped", "hover"),font_size = 8) %>%
  kableExtra::add_footnote( c(paste("Note. ",nrow(coronavirus_iso3c_2),"observations")), 
                            notation = "none") %>%
  kableExtra::scroll_box(width = "100%", height = "375px")
Table 9. Percentage of Missing data in the Different Time Points By Country
country population population_density median_age aged_65_older aged_70_older gdp_per_capita extreme_poverty diabetes_prevalence female_smokers male_smokers handwashing_facilities hospital_beds_per_thousand life_expectancy cases_deaths stringency_ind_oxf
Afghanistan 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 0% 0% 0% 0% 0%
Albania 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0%
Algeria 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 4%
Andorra 0% 0% 100% 100% 100% 100% 100% 0% 0% 0% 100% 100% 0% 0% 1%
Angola 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 0% 100% 0% 0% 0%
Antigua and Barbuda 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 100% 0% 0% 0% 100%
Argentina 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0%
Armenia 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100%
Australia 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0%
Austria 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0%
Azerbaijan 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0%
Bahamas 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 100%
Bahrain 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 0%
Bangladesh 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1%
Barbados 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0%
Belarus 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 0%
Belgium 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0%
Belize 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 0% 0% 0% 0% 0%
Benin 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Bhutan 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0% 0%
Bolivia 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0% 0%
Bosnia and Herzegovina 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Botswana 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 0%
Brazil 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 1%
Brunei 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 2%
Bulgaria 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 1%
Burkina Faso 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Burundi 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0% 1%
Cambodia 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 2%
Cameroon 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0% 1%
Canada 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 1%
Cape Verde 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 0%
Central African Republic 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 0% 0% 0% 0% 2%
Chad 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 100% 0% 0% 0%
Chile 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0%
China 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 1%
Colombia 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Comoros 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100%
Congo 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0%
Costa Rica 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Cote d’Ivoire 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 100% 0% 0% 1%
Croatia 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0%
Cuba 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0%
Cyprus 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 0%
Czech Republic 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 0%
Democratic Republic of Congo 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 100% 0% 0% 2%
Denmark 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 1%
Djibouti 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0%
Dominica 0% 0% 100% 100% 100% 0% 100% 0% 100% 100% 100% 0% 0% 0% 1%
Dominican Republic 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1%
Ecuador 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1%
Egypt 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
El Salvador 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1%
Equatorial Guinea 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 0% 0% 0% 0% 100%
Eritrea 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 0%
Estonia 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0%
Ethiopia 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 2%
Fiji 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 1%
Finland 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 0%
France 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 0%
Gabon 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 100% 0% 0% 0% 2%
Gambia 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 3%
Georgia 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0%
Germany 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 0%
Ghana 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Greece 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 1%
Grenada 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 100% 0% 0% 0% 100%
Guatemala 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0% 0%
Guinea 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0% 1%
Guinea-Bissau 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 100% 0% 0% 100%
Guyana 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 0% 0% 0% 0% 0%
Haiti 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 4%
Honduras 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0%
Hungary 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0%
Iceland 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 1%
India 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Indonesia 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 3%
Iran 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 1%
Iraq 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0% 1%
Ireland 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 1%
Israel 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0%
Italy 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 3%
Jamaica 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 3%
Japan 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 0%
Jordan 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 100% 0% 0% 0% 0%
Kazakhstan 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Kenya 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Kosovo 0% 0% 100% 100% 100% 0% 0% 100% 100% 100% 100% 100% 100% 0% 0%
Kuwait 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 1%
Kyrgyzstan 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Laos 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Latvia 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0%
Lebanon 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 1%
Lesotho 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0%
Liberia 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1%
Libya 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 100% 0% 0% 0% 0%
Liechtenstein 0% 0% 100% 100% 100% 100% 100% 0% 100% 100% 100% 0% 0% 0% 100%
Lithuania 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0%
Luxembourg 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0%
Macedonia 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 100% 0% 0% 0% 100%
Madagascar 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0% 0%
Malawi 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Malaysia 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0%
Maldives 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 100% 0% 0% 100%
Mali 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 1%
Malta 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100%
Marshall Islands 0% 0% 100% 100% 100% 0% 100% 0% 100% 100% 0% 0% 0% 0% 100%
Mauritania 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 100% 0% 0% 1%
Mauritius 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 1%
Mexico 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Moldova 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Monaco 0% 0% 100% 100% 100% 100% 100% 0% 100% 100% 100% 0% 0% 0% 100%
Mongolia 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Montenegro 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100%
Morocco 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 1%
Mozambique 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Myanmar 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1%
Namibia 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 1%
Nepal 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 3%
Netherlands 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 2%
New Zealand 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 0%
Nicaragua 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 100% 0% 0% 0% 0%
Niger 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Nigeria 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 100% 0% 0% 0%
Norway 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 2%
Oman 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0%
Pakistan 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1%
Panama 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 2%
Papua New Guinea 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 100% 0% 0% 1%
Paraguay 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1%
Peru 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0%
Philippines 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0%
Poland 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 0%
Portugal 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0%
Qatar 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 1%
Romania 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0%
Russia 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0%
Rwanda 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 2%
Saint Kitts and Nevis 0% 0% 100% 100% 100% 0% 100% 0% 100% 100% 100% 0% 0% 0% 100%
Saint Lucia 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 0% 0% 0% 0% 100%
Saint Vincent and the Grenadines 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 100% 0% 0% 0% 100%
San Marino 0% 0% 100% 100% 100% 0% 100% 0% 100% 100% 100% 0% 0% 0% 0%
Sao Tome and Principe 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0% 100%
Saudi Arabia 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 1%
Senegal 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0%
Serbia 0% 0% 0% 0% 100% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0%
Seychelles 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0%
Sierra Leone 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0%
Singapore 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 0%
Slovakia 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 1%
Slovenia 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 0%
Solomon Islands 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0% 0%
Somalia 0% 0% 0% 0% 0% 100% 100% 0% 100% 100% 0% 0% 0% 0% 0%
South Africa 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1%
South Korea 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 1%
South Sudan 0% 100% 0% 0% 0% 0% 100% 0% 100% 100% 100% 100% 0% 0% 0%
Spain 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0%
Sri Lanka 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0%
Sudan 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 0% 0% 0% 0% 0%
Suriname 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0%
Swaziland 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 1%
Sweden 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 1%
Switzerland 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 1%
Syria 0% 100% 0% 100% 0% 100% 100% 100% 100% 100% 0% 0% 0% 0% 1%
Taiwan 0% 100% 0% 100% 0% 100% 100% 100% 100% 100% 100% 100% 0% 0% 0%
Tajikistan 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0% 0%
Tanzania 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 2%
Thailand 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Timor 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1%
Togo 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1%
Trinidad and Tobago 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 0% 0% 0% 0% 0%
Tunisia 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Turkey 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 1%
Uganda 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Ukraine 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 2%
United Arab Emirates 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 1%
United Kingdom 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0%
United States 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 4%
Uruguay 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 1%
Uzbekistan 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0% 0%
Venezuela 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 100% 0% 0% 0% 0%
Vietnam 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Western Sahara 0% 100% 0% 100% 0% 100% 100% 100% 100% 100% 100% 100% 0% 0% 100%
Yemen 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1%
Zambia 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1%
Zimbabwe 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1%
Note. 68728 observations


We can see the variables that had the most share of missing values in the following table.


coronavirus_iso3c_2%>%
  dplyr::select(-ndays_zero_deaths, -text, -ndays)%>%
    summarise_at(vars(population:stringency_ind_oxf),~scales::percent(sum(is.na(.))/n()))%>%
  data.frame()%>% t()%>%  data.table::as.data.table(keep.rownames = T)%>% 
  knitr::kable(.,format = "html", format.args = list(decimal.mark = ".", big.mark = ","),
               caption = paste0("Table 10. Percentage of Missing data in the Different Time Points & Country By Variables"),
               align =rep('c', 101),
               col.names = c("Variables", "% of Miss.")) %>%
  kableExtra::kable_styling(bootstrap_options = c("striped", "hover"),font_size = 8) %>%
  kableExtra::add_footnote( c("Note. "), 
                            notation = "none") %>%
  kableExtra::scroll_box(width = "100%", height = "375px")
Table 10. Percentage of Missing data in the Different Time Points & Country By Variables
Variables % of Miss.
population 0%
population_density 2%
median_age 3%
aged_65_older 5%
aged_70_older 4%
gdp_per_capita 3%
extreme_poverty 27%
diabetes_prevalence 2%
female_smokers 19%
male_smokers 20%
handwashing_facilities 62%
hospital_beds_per_thousand 8%
life_expectancy 0%
cases_deaths 0%
stringency_ind_oxf 9%
Note.
#rm(list=setdiff(ls(), c("coronavirus_iso3c_2","copiar_nombres")))


4 Environmental Datasets

4.1 World Bank Climate Data

We joined the dataset with ropensci/rWBclimate repository, which is an R interface for the World Bank climate data used in the World Bank climate knowledge portal. Unfortunately, Kosovo (RKS), South Sudan (SSD), was not in the datasets. This is very strange, because “SSD” notation is present in UN coding. We obtained the monthly historical average temperature for each country, based on records from 1901 to 2009. The average obtained by month will depend on the historical data available by country. Additionally, we obtained the average indicator of decade for each variable, selecting the data related to 2010. In case of China, we used climatological data of the month of November as the starting point of the disease.


    #https://cran.r-project.org/web/packages/rWBclimate/rWBclimate.pdf
    #Monthly average    The monthly average for all 12 months for a given time period
    #Annual average a single average for a given time period
    #Monthly anomaly    Average monthly change (anomaly). The control period is 1961-1999 for temperature and precipitation variables, and 1961-2000 for derived statistics.
    #Annual anomaly Average annual change (anomaly). The control period is 1961-1999 for temperature and precipitation variables, and 1961-2000 for derived statistics.
    #install.packages("rWBclimate")
    #https://github.com/ropensci/rWBclimate
#Month will return 12 values, a historical average for that month across all years.

country.list <- coronavirus_iso3c_2 %>% dplyr::filter(!iso_code %in% c("RKS", "SSD"))%>% distinct(iso_code)%>% unlist()%>% as.character()

### Grab temp data
global_hist_temp_month <- get_historical_temp(country.list, "month") %>% dplyr::mutate(date_month=stringr::str_extract(month, "^.{3}"))
global_hist_temp_decade <-get_historical_temp(country.list, "decade")

global_hist_prec_month <- get_historical_precip(country.list, "month") %>% dplyr::mutate(date_month=stringr::str_extract(month, "^.{3}"))
global_hist_prec_decade<- get_historical_precip(country.list, "decade")


In order to match with monthly information, we had to transform the databases, including a variable to identify the month of each date, in a three-character format (date_month).


#rm(list=setdiff(ls(), c("coronavirus_iso3c_2", "global_hist_temp_month", "global_hist_temp_decade","global_hist_prec_month","global_hist_prec_decade")))
Sys.setlocale(category = "LC_ALL", locale = "english")
## [1] "LC_COLLATE=English_United States.1252;LC_CTYPE=English_United States.1252;LC_MONETARY=English_United States.1252;LC_NUMERIC=C;LC_TIME=English_United States.1252"
global_hist_prec_month <- 
global_hist_prec_month%>% dplyr::mutate(date_month=stringr::str_extract(tolower(month), "^.{3}"))
Sys.setlocale(category = "LC_ALL", locale = "english")
## [1] "LC_COLLATE=English_United States.1252;LC_CTYPE=English_United States.1252;LC_MONETARY=English_United States.1252;LC_NUMERIC=C;LC_TIME=English_United States.1252"
global_hist_temp_month <- 
global_hist_temp_month%>% dplyr::mutate(date_month=stringr::str_extract(tolower(month), "^.{3}"))

if(abs(nrow(global_hist_temp_month)-nrow(global_hist_temp_month))>0){
  paste("different amount of rows in the dataset")
}

if(abs(nrow(global_hist_temp_decade)-nrow(global_hist_prec_decade))>0){
  paste("different amount of rows in the dataset")
}
if(abs(nrow(global_hist_temp_decade)-nrow(global_hist_temp_decade))>0){
  paste("different amount of rows in the dataset")
}

if(identical(data.frame(iso=unique(global_hist_prec_month$locator)),data.frame(iso=unique(global_hist_temp_month$locator)))==F){
  paste0("countries obtained are different in the datasets")
}
if(identical(data.frame(iso=unique(global_hist_prec_decade$locator)),data.frame(iso=unique(global_hist_temp_decade$locator)))==F){
  paste0("countries obtained are different in the datasets")
}
if(identical(data.frame(iso=unique(global_hist_prec_month$locator)),data.frame(iso=unique(global_hist_temp_decade$locator)))==F){
  paste0("countries obtained are different in the datasets")
}

global_hist_temp_decade <-global_hist_temp_decade%>% dplyr::filter(year=="2010")
global_hist_prec_decade <-global_hist_prec_decade%>% dplyr::filter(year=="2010")

#all.equal(data.frame(iso=unique(global_hist_prec_decade$locator)),data.frame(iso=unique(global_hist_temp_decade$locator)), tolerance = 0)

#data.frame(isos=unique(global_hist_prec_decade$locator))%>% dplyr::anti_join(data.frame(isos=unique(global_hist_temp_decade$locator)))

Sys.setlocale(category = "LC_ALL", locale = "english")
## [1] "LC_COLLATE=English_United States.1252;LC_CTYPE=English_United States.1252;LC_MONETARY=English_United States.1252;LC_NUMERIC=C;LC_TIME=English_United States.1252"
coronavirus_iso3c_2%>%
    dplyr::select(-ndays_zero_deaths)%>%
    dplyr::mutate(date_month=months(dates),
                  date_month=stringr::str_extract(tolower(date_month), "^.{3}"))%>%
    dplyr::left_join(dplyr::select(global_hist_temp_month,locator,date_month,data),by=c("date_month"="date_month","iso_code"="locator"))%>%
    dplyr::rename("monthly_temp"="data")%>%
    dplyr::left_join(dplyr::select(global_hist_prec_month,locator,date_month,data),by=c("date_month"="date_month","iso_code"="locator"))%>%
    dplyr::rename("monthly_prec"="data")%>%
    dplyr::left_join(dplyr::select(global_hist_temp_decade,locator,data),by=c("iso_code"="locator"))%>%
    dplyr::rename("decade_temp"="data")%>%
    dplyr::left_join(dplyr::select(global_hist_prec_decade,locator,data),by=c("iso_code"="locator"))%>%
    dplyr::rename("decade_prec"="data")%>%
    dplyr::select(country, iso_code, dates, date_month,cases, cases_deaths, ndays,ndays_zero,text,everything())->
  #dplyr::select(dates, date_month)%>% View()
  coronavirus_iso3c_3


The following countries could not be joined with the dataset, because they were not found. From the dataset, it could be possible that dichotomous response of missing vs. not-missing may be explained because there were no monthly differences in availability of information. We must think about the convenience of including these countries.


coronavirus_iso3c_3%>%
    dplyr::group_by(iso_code, country) %>% 
    summarise_at(vars(monthly_temp:decade_prec),~sum(is.na(.))/n())%>%
    dplyr::ungroup()%>%
    dplyr::mutate(sumVar = rowSums(.[3:6]))%>%
    dplyr::filter(sumVar>0)%>%
    dplyr::select(-sumVar)%>%
    dplyr::mutate_at(vars(monthly_temp:decade_prec),~scales::percent(.))%>%
  #dplyr::mutate(sumVar = rowSums(dplyr::select(monthly_temp:decade_prec)))%>% 
    datatable(filter = 'top', colnames = c('ISO 3-letter' =2,'Country' =3,'Monthly Temp' = 4,'Monthly Prec' = 5,'Decade Temp' = 6,'Decade Prec' = 7),
              caption = htmltools::tags$caption(
                  style = 'caption-side: top; text-align: left;',
                  'Table 11: ', htmltools::em('Countries of merged dataset that did not match with WB Climate Datasets')),
              options=list(
                  initComplete = JS(
                      "function(settings, json) {",
                      "$(this.api().tables().body()).css({'font-size': '80%'});",
                      "}")))

4.2 World Bank Climate Data at 2007

We added the monthly average temperature (celsius) and rainfall (milliliters) from the Climate Change Knowledge Portal available in this link. In case of China, we used climatological data of the month of November as the starting point of the disease.


temp <- tryCatch(
    {
        readr::read_csv("C:/Users/andre/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/temp.csv")
    },
    error = function(e){
        readr::read_csv("C:/Users/CISS Fondecyt/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/temp.csv")
    }
)
## Parsed with column specification:
## cols(
##   `Temperature - (Celsius)` = col_double(),
##   Year = col_double(),
##   Statistics = col_character(),
##   Country = col_character(),
##   ISO3 = col_character()
## )
temp <- temp%>% 
  dplyr::filter(Year==2007)%>% 
  janitor::clean_names()%>% 
  dplyr::mutate(date_month=stringr::str_extract(tolower(statistics), "^.{3}"))%>%
  dplyr::select(iso3,country,year, date_month,temperature_celsius)%>%
  dplyr::rename("month_temp_07"="temperature_celsius")

temp%>%
  dplyr::anti_join(coronavirus_iso3c_3,by= c("iso3"="iso_code","date_month"="date_month"))%>%
  dplyr::filter(!date_month %in% c("nov", "dec"))%>%
  dplyr::distinct(country,iso3,date_month)%>%
    datatable(filter = 'top', colnames = c('ISO 3-letter' =2,'Country' = 3,'Date Month' = 4),
              caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        'Table 12: ', htmltools::em('Countries and Months of CCKP dataset (Temp 07) that did not match with our dataset')),
      options=list(
initComplete = JS(
      "function(settings, json) {",
      "$(this.api().tables().body()).css({'font-size': '80%'});",
      "}")))
#monthly_temp_1 monthly_temp_30 month_temp_16_1 month_temp_16_30 month_rainfall_mm_16_1 month_rainfall_mm_16_30 as.Date("2019-12-30") as.Date("2019-12-01")


As seen in Table 12, many countries did not had a 3-letter ISO code, possibly to geopolitical reasons. We replaced the missing values of ISO3 to join the dataset adequately.


temp<- 
 temp%>%
    dplyr::mutate(iso3= dplyr::case_when(iso3=="The" & country=="Bahamas"~"BHS",
                                        iso3=="The" & country=="Gambia"~"GMB", 
                                        iso3=="Republic of" & country=="Korea"~"KOR",
                                        iso3=="United Republic of" & country=="Tanzania"~"TZA", TRUE~as.character(iso3)))
 
coronavirus_iso3c_3%>%
  dplyr::left_join(dplyr::select(temp,iso3,date_month, month_temp_07),by= c("iso_code"="iso3","date_month"="date_month"))%>%
  dplyr::filter(is.na(month_temp_07))%>%
  dplyr::group_by(iso_code,country)%>%
  dplyr::summarise(N=n(),first_date=min(dates),last_date=max(dates))%>%
  dplyr::filter(N>0)%>%
    datatable(filter = 'top', colnames = c('ISO 3-letter' =2,'Country' = 3,'Data Points' = 4),
              caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        'Table 13: ', htmltools::em('Countries of our dataset (Temp 07) that did not match with CCKP dataset')),
      options=list(
initComplete = JS(
      "function(settings, json) {",
      "$(this.api().tables().body()).css({'font-size': '80%'});",
      "}")))
## `summarise()` regrouping output by 'iso_code' (override with `.groups` argument)
coronavirus_iso3c_3_1<-
      coronavirus_iso3c_3%>%
        dplyr::left_join(dplyr::select(temp,iso3,date_month, month_temp_07),by= c("iso_code"="iso3","date_month"="date_month"))


Then, we added the dataset of rainfalls. We already resolved some of the problems in 3-letter ISO codes in Temperatures dataset.


rain <-tryCatch(
        {
           readr::read_csv("C:/Users/andre/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/rainfall.csv")
        },
        error = function(e){
           readr::read_csv("C:/Users/CISS Fondecyt/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/rainfall.csv")
        }
)
## Parsed with column specification:
## cols(
##   `Rainfall - (MM)` = col_double(),
##   Year = col_double(),
##   Statistics = col_character(),
##   Country = col_character(),
##   ISO3 = col_character()
## )
rain <- rain%>%
  dplyr::filter(Year==2007)%>% 
  janitor::clean_names()%>% 
  dplyr::mutate(date_month=stringr::str_extract(tolower(statistics), "^.{3}"))%>%
  dplyr::select(iso3,country,year, date_month,rainfall_mm)%>%
  dplyr::rename("month_rainfall_mm_07"="rainfall_mm")

rain <-
rain%>%
    dplyr::mutate(iso3= dplyr::case_when(iso3=="The" & country=="Bahamas"~"BHS",
                                        iso3=="The" & country=="Gambia"~"GMB", 
                                        iso3=="Republic of" & country=="Korea"~"KOR",
                                        iso3=="United Republic of" & country=="Tanzania"~"TZA", TRUE~as.character(iso3)))

rain%>%
  dplyr::anti_join(coronavirus_iso3c_3,by= c("iso3"="iso_code","date_month"="date_month"))%>%
  dplyr::filter(!date_month %in% c("nov", "dec"))%>%
  dplyr::distinct(country,iso3,date_month)%>%
    datatable(filter = 'top', colnames = c('ISO 3-letter' =2,'Country' = 3,'Date Month' = 4),
              caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        'Table 14: ', htmltools::em('Countries and Months of CCKP (rain 07) dataset that did not match with our dataset')),
      options=list(
initComplete = JS(
      "function(settings, json) {",
      "$(this.api().tables().body()).css({'font-size': '80%'});",
      "}")))
coronavirus_iso3c_3%>%
  dplyr::left_join(dplyr::select(rain,iso3,date_month, month_rainfall_mm_07),by= c("iso_code"="iso3","date_month"="date_month"))%>%
  dplyr::filter(is.na(month_rainfall_mm_07))%>%
  dplyr::group_by(iso_code,country)%>%
  dplyr::summarise(N=n(),first_date=min(dates),last_date=max(dates))%>%
  dplyr::filter(N>0)%>%
    datatable(filter = 'top', colnames = c('ISO 3-letter' =2,'Country' = 3,'Data Points' = 4),
              caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        'Table 15: ', htmltools::em('Countries of our dataset (rain 07) that did not match with CCKP dataset')),
      options=list(
initComplete = JS(
      "function(settings, json) {",
      "$(this.api().tables().body()).css({'font-size': '80%'});",
      "}")))
## `summarise()` regrouping output by 'iso_code' (override with `.groups` argument)
coronavirus_iso3c_3_2<-
        coronavirus_iso3c_3_1%>%
          dplyr::left_join(dplyr::select(rain,iso3,date_month, month_rainfall_mm_07),by= c("iso_code"="iso3","date_month"="date_month"))


4.3 World Bank Climate Data at 2016

We added the monthly average temperature (celsius) and rainfall (milliliters) from the Climate Change Knowledge Portal available in this link. In case of China, we used climatological data of the month of November as the starting point of the disease.


temp <- tryCatch(
    {
        readr::read_csv("C:/Users/andre/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/temp.csv")
    },
    error = function(e){
        readr::read_csv("C:/Users/CISS Fondecyt/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/temp.csv")
    }
)
## Parsed with column specification:
## cols(
##   `Temperature - (Celsius)` = col_double(),
##   Year = col_double(),
##   Statistics = col_character(),
##   Country = col_character(),
##   ISO3 = col_character()
## )
temp <- temp%>% 
  dplyr::filter(Year==2016)%>% 
  janitor::clean_names()%>% 
  dplyr::mutate(date_month=stringr::str_extract(tolower(statistics), "^.{3}"))%>%
  dplyr::select(iso3,country,year, date_month,temperature_celsius)%>%
  dplyr::rename("month_temp_16"="temperature_celsius")

temp%>%
  dplyr::anti_join(coronavirus_iso3c_3_2,by= c("iso3"="iso_code","date_month"="date_month"))%>%
  dplyr::filter(!date_month %in% c("nov", "dec"))%>%
  dplyr::distinct(country,iso3,date_month)%>%
    datatable(filter = 'top', colnames = c('ISO 3-letter' =2,'Country' = 3,'Date Month' = 4),
              caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        'Table 16: ', htmltools::em('Countries and Months of CCKP dataset (Temp) that did not match with our dataset')),
      options=list(
initComplete = JS(
      "function(settings, json) {",
      "$(this.api().tables().body()).css({'font-size': '80%'});",
      "}")))
#monthly_temp_1 monthly_temp_30 month_temp_16_1 month_temp_16_30 month_rainfall_mm_16_1 month_rainfall_mm_16_30 as.Date("2019-12-30") as.Date("2019-12-01")


As seen in Table 16, many countries did not had a 3-letter ISO code, possibly to geopolitical reasons. We replaced the missing values of ISO3 to join the dataset adequately.


temp<- 
 temp%>%
    dplyr::mutate(iso3= dplyr::case_when(iso3=="The" & country=="Bahamas"~"BHS",
                                        iso3=="The" & country=="Gambia"~"GMB", 
                                        iso3=="Republic of" & country=="Korea"~"KOR",
                                        iso3=="United Republic of" & country=="Tanzania"~"TZA", TRUE~as.character(iso3)))
temp_exp_16_to_recover_later<- temp %>% 
  tidyr::pivot_wider(names_from=date_month,values_from=month_temp_16) %>% 
  dplyr::select(-year)
 
coronavirus_iso3c_3_2%>%
  dplyr::left_join(dplyr::select(temp,iso3,date_month, month_temp_16),by= c("iso_code"="iso3","date_month"="date_month"))%>%
  dplyr::filter(is.na(month_temp_16))%>%
  dplyr::group_by(iso_code,country)%>%
  dplyr::summarise(N=n(),first_date=min(dates),last_date=max(dates))%>%
  dplyr::filter(N>0)%>%
    datatable(filter = 'top', colnames = c('ISO 3-letter' =2,'Country' = 3,'Data Points' = 4),
              caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        'Table 17: ', htmltools::em('Countries of our dataset (Temp) that did not match with CCKP dataset')),
      options=list(
initComplete = JS(
      "function(settings, json) {",
      "$(this.api().tables().body()).css({'font-size': '80%'});",
      "}")))
## `summarise()` regrouping output by 'iso_code' (override with `.groups` argument)
coronavirus_iso3c_3_3<-
      coronavirus_iso3c_3_2%>%
        dplyr::left_join(dplyr::select(temp,iso3,date_month, month_temp_16),by= c("iso_code"="iso3","date_month"="date_month"))


Then, we added the dataset of rainfalls. We already resolved some of the problems in 3-letter ISO codes in Temperatures dataset.


rain <-tryCatch(
        {
           readr::read_csv("C:/Users/andre/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/rainfall.csv")
        },
        error = function(e){
           readr::read_csv("C:/Users/CISS Fondecyt/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/rainfall.csv")
        }
)
## Parsed with column specification:
## cols(
##   `Rainfall - (MM)` = col_double(),
##   Year = col_double(),
##   Statistics = col_character(),
##   Country = col_character(),
##   ISO3 = col_character()
## )
rain <- rain%>%
  dplyr::filter(Year==2016)%>% 
  janitor::clean_names()%>% 
  dplyr::mutate(date_month=stringr::str_extract(tolower(statistics), "^.{3}"))%>%
  dplyr::select(iso3,country,year, date_month,rainfall_mm)%>%
  dplyr::rename("month_rainfall_mm_16"="rainfall_mm")

rain <-
rain%>%
    dplyr::mutate(iso3= dplyr::case_when(iso3=="The" & country=="Bahamas"~"BHS",
                                        iso3=="The" & country=="Gambia"~"GMB", 
                                        iso3=="Republic of" & country=="Korea"~"KOR",
                                        iso3=="United Republic of" & country=="Tanzania"~"TZA", TRUE~as.character(iso3)))

rain%>%
  dplyr::anti_join(coronavirus_iso3c_3_3,by= c("iso3"="iso_code","date_month"="date_month"))%>%
  dplyr::filter(!date_month %in% c("nov", "dec"))%>%
  dplyr::distinct(country,iso3,date_month)%>%
    datatable(filter = 'top', colnames = c('ISO 3-letter' =2,'Country' = 3,'Date Month' = 4),
              caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        'Table 18: ', htmltools::em('Countries and Months of CCKP (rain) dataset that did not match with our dataset')),
      options=list(
initComplete = JS(
      "function(settings, json) {",
      "$(this.api().tables().body()).css({'font-size': '80%'});",
      "}")))
coronavirus_iso3c_3_3%>%
  dplyr::left_join(dplyr::select(rain,iso3,date_month, month_rainfall_mm_16),by= c("iso_code"="iso3","date_month"="date_month"))%>%
  dplyr::filter(is.na(month_rainfall_mm_16))%>%
  dplyr::group_by(iso_code,country)%>%
  dplyr::summarise(N=n(),first_date=min(dates),last_date=max(dates))%>%
  dplyr::filter(N>0)%>%
    datatable(filter = 'top', colnames = c('ISO 3-letter' =2,'Country' = 3,'Data Points' = 4),
              caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        'Table 19: ', htmltools::em('Countries of our dataset (rain) that did not match with CCKP dataset')),
      options=list(
initComplete = JS(
      "function(settings, json) {",
      "$(this.api().tables().body()).css({'font-size': '80%'});",
      "}")))
## `summarise()` regrouping output by 'iso_code' (override with `.groups` argument)
coronavirus_iso3c_3_4<-
        coronavirus_iso3c_3_3%>%
          dplyr::left_join(dplyr::select(rain,iso3,date_month, month_rainfall_mm_16),by= c("iso_code"="iso3","date_month"="date_month"))


4.4 World Bank Climate Data, Aggregated Decennial

We added the decennial average temperature (Celsius) and rainfall (milliliters) from the Climate Change Knowledge Portal, by getting the average number of the available monthly data by country: one from 1997-2006, and other from 2007-2016 available in this link. In case of China, we used climatological data of the month of November as the starting point of the disease.


temp_agg <- tryCatch(
    {
        readr::read_csv("C:/Users/andre/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/tmp_1991_2016.csv")
    },
    error = function(e){
        readr::read_csv("C:/Users/CISS Fondecyt/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/tmp_1991_2016.csv")
    }
)
## Parsed with column specification:
## cols(
##   `Temperature - (Celsius)` = col_double(),
##   Year = col_double(),
##   Statistics = col_character(),
##   Country = col_character(),
##   countrycode = col_character(),
##   X6 = col_logical()
## )
temp_agg_97_06 <- temp_agg%>% 
  dplyr::filter(Year>=1997 & Year <= 2006)%>% 
  janitor::clean_names()%>% 
  dplyr::group_by(country,countrycode)%>%
  dplyr::select(countrycode,country,year, statistics,temperature_celsius)%>%
  dplyr::summarise(month_temp_agg97_06=mean(temperature_celsius, na.rm=T))%>%
  dplyr::rename("iso3"="countrycode")%>%
  ungroup()
## `summarise()` regrouping output by 'country' (override with `.groups` argument)
temp_agg_07_16 <- temp_agg%>% 
  dplyr::filter(Year>=2007 & Year <= 2016)%>% 
  janitor::clean_names()%>% 
  dplyr::group_by(country,countrycode)%>%
  dplyr::select(countrycode,country,year, statistics,temperature_celsius)%>%
  dplyr::summarise(month_temp_agg07_16=mean(temperature_celsius, na.rm=T))%>%
  dplyr::rename("iso3"="countrycode")%>%
  ungroup()
## `summarise()` regrouping output by 'country' (override with `.groups` argument)
temp_agg_97_06%>%
  dplyr::anti_join(coronavirus_iso3c_3_4,by= c("iso3"="iso_code"))%>%
  dplyr::distinct(iso3,.keep_all=T)%>%
    datatable(filter = 'top', colnames = c('ISO 3-letter' =2,'Country' =3,'Avg Temp' =4),
              caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        'Table 20a: ', htmltools::em('Countries and Months of CCKP dataset (Temp) from 1997 to 2006, that did not match with our dataset')),
      options=list(
initComplete = JS(
      "function(settings, json) {",
      "$(this.api().tables().body()).css({'font-size': '80%'});",
      "}")))
temp_agg_07_16%>%
  dplyr::anti_join(coronavirus_iso3c_3_4,by= c("iso3"="iso_code"))%>%
  dplyr::distinct(iso3,.keep_all=T)%>%
    datatable(filter = 'top', colnames = c('ISO 3-letter' =2,'Country' =3,'Avg Temp' =4),
              caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        'Table 20b: ', htmltools::em('Countries and Months of CCKP dataset (Temp) from 2007 to 2016, that did not match with our dataset')),
      options=list(
initComplete = JS(
      "function(settings, json) {",
      "$(this.api().tables().body()).css({'font-size': '80%'});",
      "}")))
#monthly_temp_1 monthly_temp_30 month_temp_16_1 month_temp_16_30 month_rainfall_mm_16_1 month_rainfall_mm_16_30 as.Date("2019-12-30") as.Date("2019-12-01")


As seen in Tables 20a & 20b, many countries did not had a 3-letter ISO code, possibly to geopolitical reasons. We replaced the missing values of ISO3 to join the dataset adequately.


temp_agg_97_06<- 
 temp_agg_97_06%>%
    dplyr::mutate(iso3= dplyr::case_when(iso3=="The" & country=="Bahamas"~"BHS",
                                        iso3=="The" & country=="Gambia"~"GMB", 
                                        iso3=="Republic of" & country=="Korea"~"KOR",
                                        iso3=="United Republic of" & country=="Tanzania"~"TZA", TRUE~as.character(iso3)))
temp_agg_07_16<- 
 temp_agg_07_16%>%
    dplyr::mutate(iso3= dplyr::case_when(iso3=="The" & country=="Bahamas"~"BHS",
                                        iso3=="The" & country=="Gambia"~"GMB", 
                                        iso3=="Republic of" & country=="Korea"~"KOR",
                                        iso3=="United Republic of" & country=="Tanzania"~"TZA", TRUE~as.character(iso3)))

coronavirus_iso3c_3_4%>%
  dplyr::left_join(dplyr::select(temp_agg_97_06,iso3,month_temp_agg97_06),by= c("iso_code"="iso3"))%>%
  dplyr::filter(is.na(month_temp_agg97_06))%>%
  dplyr::group_by(iso_code,country)%>%
  dplyr::summarise(N=n(),first_date=min(dates),last_date=max(dates))%>%
  dplyr::filter(N>0)%>%
    datatable(filter = 'top', colnames = c('ISO 3-letter' =2,'Country' = 3,'Data Points' = 4),
              caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        'Table 21a: ', htmltools::em('Countries of our dataset (Aggr. Temp 97-06) that did not match with CCKP dataset')),
      options=list(
initComplete = JS(
      "function(settings, json) {",
      "$(this.api().tables().body()).css({'font-size': '80%'});",
      "}")))
## `summarise()` regrouping output by 'iso_code' (override with `.groups` argument)
coronavirus_iso3c_3_4%>%
  dplyr::left_join(dplyr::select(temp_agg_07_16,iso3,month_temp_agg07_16),by= c("iso_code"="iso3"))%>%
  dplyr::filter(is.na(month_temp_agg07_16))%>%
  dplyr::group_by(iso_code,country)%>%
  dplyr::summarise(N=n(),first_date=min(dates),last_date=max(dates))%>%
  dplyr::filter(N>0)%>%
    datatable(filter = 'top', colnames = c('ISO 3-letter' =2,'Country' = 3,'Data Points' = 4),
              caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        'Table 21b: ', htmltools::em('Countries of our dataset (Aggr. Temp 07-16) that did not match with CCKP dataset')),
      options=list(
initComplete = JS(
      "function(settings, json) {",
      "$(this.api().tables().body()).css({'font-size': '80%'});",
      "}")))
## `summarise()` regrouping output by 'iso_code' (override with `.groups` argument)
coronavirus_iso3c_3_5<-
      coronavirus_iso3c_3_4%>%
  dplyr::left_join(dplyr::select(temp_agg_97_06,iso3,month_temp_agg97_06),by= c("iso_code"="iso3"))%>%
        dplyr::left_join(dplyr::select(temp_agg_07_16,iso3,month_temp_agg07_16),by= c("iso_code"="iso3"))


Then, we added the dataset of rainfalls. We already resolved some of the problems in 3-letter ISO codes in Temperatures dataset.


rain_agg <- tryCatch(
    {
        readr::read_csv("C:/Users/andre/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/pr_1991_2016.csv")
    },
    error = function(e){
        readr::read_csv("C:/Users/CISS Fondecyt/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/pr_1991_2016.csv")
    }
)
## Parsed with column specification:
## cols(
##   `Rainfall - (MM)` = col_double(),
##   Year = col_double(),
##   Statistics = col_character(),
##   Country = col_character(),
##   ISO3 = col_character()
## )
rain_agg_97_06 <- rain_agg%>% 
  dplyr::filter(Year>=1997 & Year <= 2006)%>% 
  janitor::clean_names()%>% 
  dplyr::group_by(country,iso3)%>%
  dplyr::select(iso3,country,year, statistics,rainfall_mm)%>%
  dplyr::summarise(month_rain_agg97_06=mean(rainfall_mm, na.rm=T))%>%
  ungroup()
## `summarise()` regrouping output by 'country' (override with `.groups` argument)
rain_agg_07_16 <- rain_agg%>% 
  dplyr::filter(Year>=2007 & Year <= 2016)%>% 
  janitor::clean_names()%>% 
  dplyr::group_by(country,iso3)%>%
  dplyr::select(iso3,country,year, statistics,rainfall_mm)%>%
  dplyr::summarise(month_rain_agg07_16=mean(rainfall_mm, na.rm=T))%>%
  ungroup()
## `summarise()` regrouping output by 'country' (override with `.groups` argument)
rain_agg_97_06%>%
  dplyr::anti_join(coronavirus_iso3c_3_5,by= c("iso3"="iso_code"))%>%
  dplyr::distinct(iso3,.keep_all=T)%>%
    datatable(filter = 'top', colnames = c('ISO 3-letter' =2,'Country' =3,'Avg Rain' =4),
              caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        'Table 22a: ', htmltools::em('Countries and Months of CCKP dataset (Rain) from 1997 to 2006, that did not match with our dataset')),
      options=list(
initComplete = JS(
      "function(settings, json) {",
      "$(this.api().tables().body()).css({'font-size': '80%'});",
      "}")))
rain_agg_07_16%>%
  dplyr::anti_join(coronavirus_iso3c_3_5,by= c("iso3"="iso_code"))%>%
  dplyr::distinct(iso3,.keep_all=T)%>%
    datatable(filter = 'top', colnames = c('ISO 3-letter' =2,'Country' =3,'Avg Rain' =4),
              caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        'Table 22b: ', htmltools::em('Countries and Months of CCKP dataset (Rain) from 2007 to 2016, that did not match with our dataset')),
      options=list(
initComplete = JS(
      "function(settings, json) {",
      "$(this.api().tables().body()).css({'font-size': '80%'});",
      "}")))
#monthly_temp_1 monthly_temp_30 month_temp_16_1 month_temp_16_30 month_rainfall_mm_16_1 month_rainfall_mm_16_30 as.Date("2019-12-30") as.Date("2019-12-01")
rain_agg_97_06<- 
 rain_agg_97_06%>%
    dplyr::mutate(iso3= dplyr::case_when(iso3=="The" & country=="Bahamas"~"BHS",
                                        iso3=="The" & country=="Gambia"~"GMB", 
                                        iso3=="Republic of" & country=="Korea"~"KOR",
                                        iso3=="United Republic of" & country=="Tanzania"~"TZA", TRUE~as.character(iso3)))
rain_agg_07_16<- 
 rain_agg_07_16%>%
    dplyr::mutate(iso3= dplyr::case_when(iso3=="The" & country=="Bahamas"~"BHS",
                                        iso3=="The" & country=="Gambia"~"GMB", 
                                        iso3=="Republic of" & country=="Korea"~"KOR",
                                        iso3=="United Republic of" & country=="Tanzania"~"TZA", TRUE~as.character(iso3)))

coronavirus_iso3c_3_5%>%
  dplyr::left_join(dplyr::select(rain_agg_97_06,iso3,month_rain_agg97_06),by= c("iso_code"="iso3"))%>%
  dplyr::filter(is.na(month_rain_agg97_06))%>%
  dplyr::group_by(iso_code,country)%>%
  dplyr::summarise(N=n(),first_date=min(dates),last_date=max(dates))%>%
  dplyr::filter(N>0)%>%
    datatable(filter = 'top', colnames = c('ISO 3-letter' =2,'Country' = 3,'Data Points' = 4),
              caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        'Table 23a: ', htmltools::em('Countries of our dataset (Aggr. Temp 97-06) that did not match with CCKP dataset')),
      options=list(
initComplete = JS(
      "function(settings, json) {",
      "$(this.api().tables().body()).css({'font-size': '80%'});",
      "}")))
## `summarise()` regrouping output by 'iso_code' (override with `.groups` argument)
coronavirus_iso3c_3_5%>%
  dplyr::left_join(dplyr::select(rain_agg_07_16,iso3,month_rain_agg07_16),by= c("iso_code"="iso3"))%>%
  dplyr::filter(is.na(month_rain_agg07_16))%>%
  dplyr::group_by(iso_code,country)%>%
  dplyr::summarise(N=n(),first_date=min(dates),last_date=max(dates))%>%
  dplyr::filter(N>0)%>%
    datatable(filter = 'top', colnames = c('ISO 3-letter' =2,'Country' = 3,'Data Points' = 4),
              caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        'Table 23b: ', htmltools::em('Countries of our dataset (Aggr. Temp 07-16) that did not match with CCKP dataset')),
      options=list(
initComplete = JS(
      "function(settings, json) {",
      "$(this.api().tables().body()).css({'font-size': '80%'});",
      "}")))
## `summarise()` regrouping output by 'iso_code' (override with `.groups` argument)
coronavirus_iso3c_3_6<-
      coronavirus_iso3c_3_5%>%
  dplyr::left_join(dplyr::select(rain_agg_97_06,iso3,month_rain_agg97_06),by= c("iso_code"="iso3"))%>%
        dplyr::left_join(dplyr::select(rain_agg_07_16,iso3,month_rain_agg07_16),by= c("iso_code"="iso3"))


4.5 NOAA Datasets

This data was obtained from open-covid-19/weather repository (link), and takes information from NOAA. It reproduces the last 2 years worth of records for all active stations from the Global Historical Climatology Network from the National Oceanic and Atmospheric Administration. Weather stations which are at most 300km from the location coordinates are considered. However, if we take a look into the nearer 100 stations to Chile, we may see that they could be very different and far away from the centroids, so we may be cautious when using these variables.


library(climate)
tryCatch(
    {
ns = climate::nearest_stations_nooa(country ="CHILE",#SPAIN NORWAY UNITED KINGDOM
                                    no_of_stations = 100, add_map = TRUE)
    },
    error = function(e){
                    tryCatch(
                            {
                              knitr::include_graphics('C:/Users/andre/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/map_chile_stations_noaa.png', dpi=96)
                            },
                            error = function(e){
                             knitr::include_graphics('C:/Users/CISS Fondecyt/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/map_chile_stations_noaa.png', dpi=96)
                            }
                    )
          }
)
## [1] "https://www1.ncdc.noaa.gov/pub/data/noaa/country-list.txt"


We checked the process and what they did is to obtain daily information from NOAA (“https://www.ncei.noaa.gov/data/global-historical-climatology-network-daily/access/{station.id}“.csv”`), then they got all the weather stations with data up until 2020 from link and that provide at least max and min temperatures. We included the 3-letter-ISO into the dataset, to let us merge it with out dataset.


index <- readr::read_csv("https://storage.googleapis.com/covid19-open-data/v2/index.csv")
## Parsed with column specification:
## cols(
##   key = col_character(),
##   wikidata = col_character(),
##   datacommons = col_character(),
##   country_code = col_character(),
##   country_name = col_character(),
##   subregion1_code = col_character(),
##   subregion1_name = col_character(),
##   subregion2_code = col_character(),
##   subregion2_name = col_character(),
##   locality_code = col_character(),
##   locality_name = col_character(),
##   `3166-1-alpha-2` = col_character(),
##   `3166-1-alpha-3` = col_character(),
##   aggregation_level = col_double()
## )
weather <- readr::read_csv("https://storage.googleapis.com/covid19-open-data/v2/weather.csv")%>%
      dplyr::left_join(select(index,key,`3166-1-alpha-3`,aggregation_level),
                       by=c("key"="key"))%>%
      dplyr::filter(aggregation_level==0)%>%
      dplyr::rename("iso_3"=`3166-1-alpha-3`)%>%
      select(iso_3,everything())
## Parsed with column specification:
## cols(
##   date = col_date(format = ""),
##   key = col_character(),
##   noaa_station = col_double(),
##   noaa_distance = col_double(),
##   average_temperature = col_double(),
##   minimum_temperature = col_double(),
##   maximum_temperature = col_double(),
##   rainfall = col_double(),
##   snowfall = col_double(),
##   dew_point = col_double(),
##   relative_humidity = col_double()
## )
#rm(list=setdiff(ls(), c("coronavirus_iso3c_3_2","copiar_nombres","weather","index")))


We looked into the countries that could have more than one entry by date.


#40190099999
  weather%>%
         dplyr::group_by(iso_3, date)%>%
         dplyr::mutate(n=n())%>%
         dplyr::filter(n>1)%>%
        dplyr::select(iso_3,date, key,n)%>%
    datatable(filter = 'top', colnames = c('ISO 3-letter' =2,'Date' =3,'Key' = 4,'No. of Times' = 5),
              caption = htmltools::tags$caption(
                  style = 'caption-side: top; text-align: left;',
                  'Table 24: ', htmltools::em('Countries with more than one entry by date')),
              options=list(
                   autoWidth = TRUE,
                  initComplete = JS(
                      "function(settings, json) {",
                      "$(this.api().tables().body()).css({'font-size': '80%'});",
                      "}")))


As can be seen in the following dataset Netherlands Antilles (AN) and Gaza (NZ) were not a member of a recognized state. Most of these countries are still in a complicated position in terms of geopolitical matters. That is why we deleted them from the join with our dataset.


Next, we filtered the dataset starting from Jan. 22, and looked over the dates that did not match with our entries.


#40190099999
weather%>%
  dplyr::filter(key!="AN"|key!="GZ")%>%
  dplyr::filter(date>="2020-01-22")%>%
  dplyr::anti_join(coronavirus_iso3c_3_6,by=c("iso_3"="iso_code","date"="dates"))%>%
  dplyr::left_join(select(index,key,`3166-1-alpha-3`,country_name),
                       by=c("key"="key"))%>%
  group_by(iso_3,country_name)%>%
  dplyr::summarise(N=n(),first_date=min(date),last_date=max(date))%>%
  dplyr::filter(N>10)%>%
    datatable(filter = 'top', colnames = c('ISO 3-letter' =2,'Country' = 3,'Data Points' = 4),
              caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        'Table 25: ', htmltools::em('Countries of NOAA dataset that did not match with our dataset')),
      options=list(
initComplete = JS(
      "function(settings, json) {",
      "$(this.api().tables().body()).css({'font-size': '80%'});",
      "}")))
## `summarise()` regrouping output by 'iso_3' (override with `.groups` argument)


As seen in Table 25, most of these countries are still in a complicated position in terms of geopolitical matters, many are islands and territorial departments of greater countries. We decided to exclude them from analysis.


#40190099999
weather<-
      weather%>%
        dplyr::filter(key!="AN"|key!="GZ")%>%
        dplyr::filter(date>="2020-01-22")  

  coronavirus_iso3c_3_6%>%
  dplyr::left_join(dplyr::select(weather,iso_3,date,noaa_station, noaa_distance, average_temperature, minimum_temperature, maximum_temperature, rainfall),by=c("iso_code"="iso_3","dates"="date"))%>%
    dplyr::group_by(dates) %>% 
    summarise_at(vars(noaa_station:rainfall),~sum(is.na(.))/n())%>%
    dplyr::ungroup()%>%
    dplyr::mutate(sumVar = scales::percent(rowSums(.[2:7])/6))%>%
    dplyr::filter(sumVar>0)%>%
    dplyr::rename("mean_miss_data_noaa"="sumVar")%>%
    dplyr::mutate_at(vars(noaa_station:rainfall),~scales::percent(.))%>%
  knitr::kable(.,format = "html", format.args = list(decimal.mark = ".", big.mark = ","),
               caption = paste0("Table 26. Percentage Dates of our dataset that did not match with NOAA dataset"),
               align =rep('c', 101)) %>%
  kableExtra::kable_styling(bootstrap_options = c("striped", "hover"),font_size = 8) %>%
  kableExtra::add_footnote( c(paste("Note. ",nrow(coronavirus_iso3c_3_2),"observations of the total dataset")), 
                            notation = "none") %>%
  kableExtra::scroll_box(width = "100%", height = "375px")
Table 26. Percentage Dates of our dataset that did not match with NOAA dataset
dates noaa_station noaa_distance average_temperature minimum_temperature maximum_temperature rainfall mean_miss_data_noaa
2020-01-22 12.81% 12.81% 12.81% 12.81% 12.81% 12.81% 12.810%
2020-01-23 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-01-24 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-01-25 13.22% 13.22% 13.22% 13.22% 13.22% 13.22% 13.223%
2020-01-26 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-01-27 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-01-28 11.98% 11.98% 11.98% 11.98% 11.98% 13.22% 12.190%
2020-01-29 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-01-30 12.40% 12.40% 12.40% 12.40% 12.40% 13.22% 12.534%
2020-01-31 13.22% 13.22% 13.22% 13.22% 13.22% 14.05% 13.361%
2020-02-01 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-02-02 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-02-03 12.40% 12.40% 12.40% 12.40% 12.40% 14.46% 12.741%
2020-02-04 12.81% 12.81% 12.81% 12.81% 12.81% 12.81% 12.810%
2020-02-05 13.22% 13.22% 13.22% 13.22% 13.22% 14.05% 13.361%
2020-02-06 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-02-07 12.40% 12.40% 12.40% 12.40% 12.40% 12.40% 12.397%
2020-02-08 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-02-09 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-02-10 11.98% 11.98% 11.98% 11.98% 11.98% 11.98% 11.983%
2020-02-11 13.22% 13.22% 13.22% 13.22% 13.22% 13.22% 13.223%
2020-02-12 11.98% 11.98% 11.98% 11.98% 11.98% 12.40% 12.052%
2020-02-13 11.57% 11.57% 11.57% 11.57% 11.57% 11.57% 11.570%
2020-02-14 12.40% 12.40% 12.40% 12.40% 12.40% 13.22% 12.534%
2020-02-15 11.98% 11.98% 11.98% 11.98% 11.98% 12.40% 12.052%
2020-02-16 12.40% 12.40% 12.40% 12.40% 12.40% 12.40% 12.397%
2020-02-17 11.98% 11.98% 11.98% 11.98% 11.98% 11.98% 11.983%
2020-02-18 11.98% 11.98% 11.98% 11.98% 11.98% 12.40% 12.052%
2020-02-19 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-02-20 11.57% 11.57% 11.57% 11.57% 11.98% 12.40% 11.777%
2020-02-21 11.98% 11.98% 11.98% 11.98% 11.98% 12.40% 12.052%
2020-02-22 11.98% 11.98% 11.98% 11.98% 11.98% 11.98% 11.983%
2020-02-23 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-02-24 11.98% 11.98% 11.98% 11.98% 11.98% 13.22% 12.190%
2020-02-25 11.98% 11.98% 11.98% 11.98% 11.98% 12.40% 12.052%
2020-02-26 11.98% 11.98% 11.98% 11.98% 11.98% 12.40% 12.052%
2020-02-27 11.57% 11.57% 11.57% 11.57% 11.57% 11.57% 11.570%
2020-02-28 12.40% 12.40% 12.40% 12.40% 12.40% 13.22% 12.534%
2020-02-29 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-03-01 11.98% 11.98% 11.98% 11.98% 11.98% 11.98% 11.983%
2020-03-02 12.40% 12.40% 12.40% 12.40% 12.40% 13.64% 12.603%
2020-03-03 11.98% 11.98% 11.98% 11.98% 11.98% 12.81% 12.121%
2020-03-04 11.57% 11.57% 11.57% 11.57% 11.57% 11.98% 11.639%
2020-03-05 12.40% 12.40% 12.40% 12.40% 12.40% 12.40% 12.397%
2020-03-06 11.98% 11.98% 11.98% 11.98% 11.98% 12.40% 12.052%
2020-03-07 12.40% 12.40% 12.40% 12.40% 12.40% 12.40% 12.397%
2020-03-08 12.81% 12.81% 12.81% 12.81% 12.81% 12.81% 12.810%
2020-03-09 11.98% 11.98% 11.98% 11.98% 11.98% 12.40% 12.052%
2020-03-10 11.57% 11.57% 11.57% 11.57% 11.57% 11.57% 11.570%
2020-03-11 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-03-12 11.98% 11.98% 11.98% 11.98% 11.98% 12.40% 12.052%
2020-03-13 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-03-14 14.05% 14.05% 14.05% 14.05% 14.05% 14.05% 14.050%
2020-03-15 12.40% 12.40% 12.40% 12.40% 12.40% 12.40% 12.397%
2020-03-16 12.40% 12.40% 12.40% 12.40% 12.40% 13.22% 12.534%
2020-03-17 11.98% 11.98% 11.98% 11.98% 11.98% 12.40% 12.052%
2020-03-18 11.57% 11.57% 11.57% 11.57% 11.57% 11.98% 11.639%
2020-03-19 11.98% 11.98% 11.98% 11.98% 11.98% 13.64% 12.259%
2020-03-20 11.98% 11.98% 11.98% 11.98% 11.98% 13.22% 12.190%
2020-03-21 12.40% 12.40% 12.40% 12.40% 12.40% 14.88% 12.810%
2020-03-22 12.81% 12.81% 12.81% 12.81% 12.81% 14.88% 13.154%
2020-03-23 11.98% 11.98% 11.98% 11.98% 11.98% 14.46% 12.397%
2020-03-24 11.98% 11.98% 11.98% 11.98% 11.98% 11.98% 11.983%
2020-03-25 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-03-26 12.81% 12.81% 12.81% 12.81% 12.81% 14.05% 13.017%
2020-03-27 13.22% 13.22% 13.22% 13.22% 13.22% 14.05% 13.361%
2020-03-28 13.64% 13.64% 13.64% 13.64% 13.64% 14.46% 13.774%
2020-03-29 13.22% 13.22% 13.22% 13.22% 13.22% 14.88% 13.499%
2020-03-30 13.64% 13.64% 13.64% 13.64% 13.64% 14.05% 13.705%
2020-03-31 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-04-01 14.05% 14.05% 14.05% 14.05% 14.05% 14.05% 14.050%
2020-04-02 13.22% 13.22% 13.22% 13.22% 13.22% 13.64% 13.292%
2020-04-03 12.40% 12.40% 12.40% 12.40% 12.40% 12.40% 12.397%
2020-04-04 12.81% 12.81% 12.81% 12.81% 12.81% 12.81% 12.810%
2020-04-05 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-04-06 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-04-07 12.40% 12.40% 12.40% 12.40% 12.40% 13.22% 12.534%
2020-04-08 12.40% 12.40% 12.40% 12.40% 12.40% 13.64% 12.603%
2020-04-09 13.22% 13.22% 13.22% 13.64% 13.64% 13.22% 13.361%
2020-04-10 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-04-11 12.40% 12.40% 12.40% 12.40% 12.40% 13.22% 12.534%
2020-04-12 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-04-13 13.22% 13.22% 13.22% 13.22% 13.22% 14.88% 13.499%
2020-04-14 12.40% 12.40% 12.40% 12.40% 12.40% 13.64% 12.603%
2020-04-15 12.40% 12.40% 12.40% 12.40% 12.40% 13.22% 12.534%
2020-04-16 12.40% 12.40% 12.40% 12.40% 12.40% 12.40% 12.397%
2020-04-17 13.22% 13.22% 13.22% 13.22% 13.22% 13.64% 13.292%
2020-04-18 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-04-19 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-04-20 12.40% 12.40% 12.40% 12.40% 12.40% 13.64% 12.603%
2020-04-21 12.40% 12.40% 12.40% 12.40% 12.40% 13.22% 12.534%
2020-04-22 13.22% 13.22% 13.22% 13.22% 13.22% 14.05% 13.361%
2020-04-23 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-04-24 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-04-25 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-04-26 13.22% 13.22% 13.22% 13.22% 13.22% 14.05% 13.361%
2020-04-27 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-04-28 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-04-29 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-04-30 12.81% 12.81% 12.81% 12.81% 12.81% 14.05% 13.017%
2020-05-01 12.40% 12.40% 12.40% 12.40% 12.40% 12.40% 12.397%
2020-05-02 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-05-03 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-05-04 12.40% 12.40% 12.40% 12.81% 12.81% 12.81% 12.603%
2020-05-05 12.40% 12.40% 12.40% 12.40% 12.40% 13.64% 12.603%
2020-05-06 12.40% 12.40% 12.40% 12.40% 12.40% 13.64% 12.603%
2020-05-07 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-05-08 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-05-09 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-05-10 13.22% 13.22% 13.22% 13.22% 13.22% 14.05% 13.361%
2020-05-11 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-05-12 12.81% 12.81% 12.81% 12.81% 12.81% 14.88% 13.154%
2020-05-13 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-05-14 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-05-15 12.40% 12.40% 12.81% 12.40% 12.40% 13.22% 12.603%
2020-05-16 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-05-17 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-05-18 12.40% 12.40% 12.40% 12.40% 12.40% 13.64% 12.603%
2020-05-19 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-05-20 12.40% 12.40% 12.40% 12.40% 12.40% 14.05% 12.672%
2020-05-21 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-05-22 12.40% 12.40% 12.40% 12.40% 12.40% 13.64% 12.603%
2020-05-23 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-05-24 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-05-25 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-05-26 12.40% 12.40% 12.40% 12.40% 12.40% 12.40% 12.397%
2020-05-27 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-05-28 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-05-29 12.40% 12.40% 12.40% 12.40% 12.40% 12.40% 12.397%
2020-05-30 12.81% 12.81% 12.81% 12.81% 12.81% 14.88% 13.154%
2020-05-31 13.64% 13.64% 13.64% 13.64% 13.64% 14.46% 13.774%
2020-06-01 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-06-02 12.81% 12.81% 12.81% 12.81% 12.81% 14.05% 13.017%
2020-06-03 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-06-04 12.81% 12.81% 12.81% 12.81% 12.81% 12.81% 12.810%
2020-06-05 12.40% 12.40% 12.40% 12.40% 12.40% 13.22% 12.534%
2020-06-06 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-06-07 13.22% 13.22% 13.22% 13.22% 13.22% 13.64% 13.292%
2020-06-08 13.22% 13.22% 13.22% 13.22% 13.22% 13.64% 13.292%
2020-06-09 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-06-10 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-06-11 12.81% 12.81% 12.81% 12.81% 12.81% 12.81% 12.810%
2020-06-12 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-06-13 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-06-14 12.40% 12.40% 12.40% 12.40% 12.40% 13.22% 12.534%
2020-06-15 12.81% 12.81% 12.81% 12.81% 12.81% 12.81% 12.810%
2020-06-16 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-06-17 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-06-18 12.40% 12.40% 12.40% 12.40% 12.40% 12.40% 12.397%
2020-06-19 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-06-20 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-06-21 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-06-22 13.22% 13.22% 13.22% 13.22% 13.22% 13.22% 13.223%
2020-06-23 13.22% 13.22% 13.64% 13.22% 13.22% 13.22% 13.292%
2020-06-24 13.22% 13.22% 13.22% 13.22% 13.22% 14.05% 13.361%
2020-06-25 13.22% 13.22% 13.22% 13.22% 13.22% 13.64% 13.292%
2020-06-26 12.40% 12.40% 12.40% 12.40% 12.40% 12.40% 12.397%
2020-06-27 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-06-28 13.22% 13.22% 13.22% 13.22% 13.22% 14.05% 13.361%
2020-06-29 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-06-30 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-07-01 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-07-02 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-07-03 13.22% 13.22% 13.22% 13.22% 13.22% 13.64% 13.292%
2020-07-04 13.22% 13.22% 13.22% 13.22% 13.22% 13.22% 13.223%
2020-07-05 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-07-06 12.40% 12.40% 12.40% 12.40% 12.40% 13.22% 12.534%
2020-07-07 12.40% 12.40% 12.40% 12.40% 12.40% 13.22% 12.534%
2020-07-08 13.22% 13.22% 13.22% 13.22% 13.22% 14.05% 13.361%
2020-07-09 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-07-10 12.81% 12.81% 12.81% 12.81% 12.81% 12.81% 12.810%
2020-07-11 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-07-12 13.22% 13.22% 13.22% 13.22% 13.22% 14.46% 13.430%
2020-07-13 12.40% 12.40% 12.40% 12.40% 12.40% 13.22% 12.534%
2020-07-14 13.64% 13.64% 13.64% 13.64% 13.64% 14.05% 13.705%
2020-07-15 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-07-16 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-07-17 12.81% 12.81% 12.81% 12.81% 12.81% 12.81% 12.810%
2020-07-18 12.81% 12.81% 12.81% 12.81% 12.81% 12.81% 12.810%
2020-07-19 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-07-20 13.22% 13.22% 13.22% 13.22% 13.22% 13.64% 13.292%
2020-07-21 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-07-22 11.98% 11.98% 11.98% 11.98% 11.98% 12.40% 12.052%
2020-07-23 12.81% 12.81% 12.81% 12.81% 12.81% 12.81% 12.810%
2020-07-24 13.22% 13.22% 13.22% 13.22% 13.22% 13.64% 13.292%
2020-07-25 13.64% 13.64% 13.64% 13.64% 13.64% 13.64% 13.636%
2020-07-26 13.22% 13.22% 13.22% 13.22% 13.22% 13.64% 13.292%
2020-07-27 13.64% 13.64% 13.64% 13.64% 13.64% 14.88% 13.843%
2020-07-28 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-07-29 13.22% 13.22% 13.22% 13.22% 13.22% 14.05% 13.361%
2020-07-30 13.22% 13.22% 13.22% 13.22% 13.22% 14.05% 13.361%
2020-07-31 13.64% 13.64% 13.64% 13.64% 13.64% 14.46% 13.774%
2020-08-01 13.64% 13.64% 13.64% 13.64% 13.64% 14.46% 13.774%
2020-08-02 13.22% 13.22% 13.22% 13.22% 13.22% 13.22% 13.223%
2020-08-03 14.05% 14.05% 14.05% 14.05% 14.05% 14.05% 14.050%
2020-08-04 13.22% 13.22% 13.22% 13.22% 13.22% 13.22% 13.223%
2020-08-05 13.22% 13.22% 13.22% 13.22% 13.22% 13.64% 13.292%
2020-08-06 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-08-07 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-08-08 12.81% 12.81% 12.81% 12.81% 12.81% 14.05% 13.017%
2020-08-09 14.05% 14.05% 14.05% 14.05% 14.05% 14.05% 14.050%
2020-08-10 13.22% 13.22% 13.22% 13.22% 13.22% 13.22% 13.223%
2020-08-11 12.81% 12.81% 12.81% 12.81% 12.81% 12.81% 12.810%
2020-08-12 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-08-13 64.88% 64.88% 64.88% 64.88% 64.88% 65.70% 65.014%
2020-08-14 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-08-15 12.81% 12.81% 12.81% 12.81% 12.81% 14.05% 13.017%
2020-08-16 11.57% 11.57% 11.57% 11.57% 11.57% 11.57% 11.570%
2020-08-17 12.40% 12.40% 12.40% 12.40% 12.40% 12.40% 12.397%
2020-08-18 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-08-19 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-08-20 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-08-21 12.81% 12.81% 12.81% 12.81% 12.81% 12.81% 12.810%
2020-08-22 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-08-23 11.98% 11.98% 11.98% 11.98% 11.98% 12.40% 12.052%
2020-08-24 12.40% 12.40% 12.40% 12.40% 12.40% 13.22% 12.534%
2020-08-25 12.81% 12.81% 13.22% 12.81% 12.81% 13.22% 12.948%
2020-08-26 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-08-27 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-08-28 13.22% 13.22% 13.22% 13.22% 13.22% 14.46% 13.430%
2020-08-29 12.40% 12.40% 12.40% 12.40% 12.40% 14.05% 12.672%
2020-08-30 12.81% 12.81% 12.81% 12.81% 12.81% 14.05% 13.017%
2020-08-31 12.81% 12.81% 12.81% 12.81% 12.81% 14.46% 13.085%
2020-09-01 12.81% 12.81% 12.81% 12.81% 12.81% 14.05% 13.017%
2020-09-02 12.81% 12.81% 12.81% 12.81% 12.81% 12.81% 12.810%
2020-09-03 13.22% 13.22% 13.22% 13.22% 13.22% 13.64% 13.292%
2020-09-04 12.40% 12.40% 12.40% 12.40% 12.40% 12.40% 12.397%
2020-09-05 12.40% 12.40% 12.40% 12.40% 12.40% 13.64% 12.603%
2020-09-06 12.40% 12.40% 12.40% 12.40% 12.40% 13.64% 12.603%
2020-09-07 12.40% 12.40% 12.40% 12.40% 12.40% 14.05% 12.672%
2020-09-08 11.98% 11.98% 11.98% 11.98% 11.98% 12.40% 12.052%
2020-09-09 12.81% 12.81% 12.81% 12.81% 12.81% 12.81% 12.810%
2020-09-10 12.40% 12.40% 12.40% 12.40% 12.40% 14.05% 12.672%
2020-09-11 12.40% 12.40% 12.40% 12.40% 12.40% 13.64% 12.603%
2020-09-12 12.40% 12.40% 12.40% 12.40% 12.40% 13.22% 12.534%
2020-09-13 12.40% 12.40% 12.40% 12.40% 12.40% 13.64% 12.603%
2020-09-14 12.40% 12.40% 12.40% 12.40% 12.40% 12.40% 12.397%
2020-09-15 12.40% 12.40% 12.40% 12.40% 12.40% 14.05% 12.672%
2020-09-16 11.98% 11.98% 11.98% 11.98% 11.98% 11.98% 11.983%
2020-09-17 12.40% 12.40% 12.40% 12.40% 12.40% 13.22% 12.534%
2020-09-18 12.81% 12.81% 12.81% 12.81% 12.81% 12.81% 12.810%
2020-09-19 11.98% 11.98% 11.98% 11.98% 11.98% 11.98% 11.983%
2020-09-20 11.98% 11.98% 11.98% 11.98% 11.98% 12.40% 12.052%
2020-09-21 11.98% 11.98% 11.98% 11.98% 11.98% 11.98% 11.983%
2020-09-22 11.98% 11.98% 11.98% 11.98% 11.98% 11.98% 11.983%
2020-09-23 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-09-24 12.40% 12.40% 12.40% 12.40% 12.40% 12.40% 12.397%
2020-09-25 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-09-26 13.22% 13.22% 13.22% 13.22% 13.22% 13.64% 13.292%
2020-09-27 13.22% 13.22% 13.22% 13.22% 13.22% 13.64% 13.292%
2020-09-28 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-09-29 12.81% 12.81% 12.81% 12.81% 12.81% 12.81% 12.810%
2020-09-30 13.22% 13.22% 13.22% 13.22% 13.22% 13.22% 13.223%
2020-10-01 13.64% 13.64% 13.64% 13.64% 13.64% 13.64% 13.636%
2020-10-02 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-10-03 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-10-04 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-10-05 13.22% 13.22% 13.22% 13.22% 13.22% 13.22% 13.223%
2020-10-06 12.81% 12.81% 12.81% 12.81% 13.22% 12.81% 12.879%
2020-10-07 12.40% 12.40% 12.40% 12.40% 12.40% 12.40% 12.397%
2020-10-08 12.81% 12.81% 12.81% 12.81% 12.81% 12.81% 12.810%
2020-10-09 13.22% 13.22% 13.22% 13.22% 13.22% 13.64% 13.292%
2020-10-10 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-10-11 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-10-12 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-10-13 13.22% 13.22% 13.22% 13.22% 13.22% 13.22% 13.223%
2020-10-14 12.40% 12.40% 12.40% 12.40% 12.40% 13.22% 12.534%
2020-10-15 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-10-16 12.81% 12.81% 12.81% 12.81% 12.81% 12.81% 12.810%
2020-10-17 12.81% 12.81% 12.81% 12.81% 12.81% 13.22% 12.879%
2020-10-18 12.81% 12.81% 12.81% 12.81% 12.81% 12.81% 12.810%
2020-10-19 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-10-20 12.81% 12.81% 12.81% 12.81% 12.81% 12.81% 12.810%
2020-10-21 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-10-22 12.81% 12.81% 12.81% 12.81% 12.81% 13.64% 12.948%
2020-10-23 12.81% 12.81% 12.81% 12.81% 12.81% 12.81% 12.810%
2020-10-24 13.22% 13.22% 13.22% 13.22% 13.22% 14.05% 13.361%
2020-10-25 13.22% 13.22% 13.22% 13.22% 13.22% 14.05% 13.361%
2020-10-26 12.81% 12.81% 12.81% 12.81% 12.81% 14.05% 13.017%
2020-10-27 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
2020-10-28 11.98% 11.98% 11.98% 11.98% 11.98% 12.40% 12.052%
2020-10-29 11.98% 11.98% 11.98% 11.98% 11.98% 11.98% 11.983%
2020-10-30 11.98% 11.98% 11.98% 11.98% 11.98% 13.22% 12.190%
2020-10-31 12.40% 12.40% 12.40% 12.40% 12.40% 12.81% 12.466%
Note. 68728 observations of the total dataset


We decided to join the dataset but excluding snowfall variable, due to lack of information among many countries. Still, there is a considerable amount of missing data. Possibly, this problem may be explained because a determined country or date does not have stations, or because more reent dates are still being updated (such as 2020-10-31)


In the following two tables we may see countries with missing information in NOAA stations. In Table 23a, we see that many developed countries did not have information related to climate from NOAA stations.


coronavirus_iso3c_3_6%>%
  dplyr::left_join(dplyr::select(weather,iso_3,date,noaa_station, noaa_distance, average_temperature, minimum_temperature, maximum_temperature, rainfall),by=c("iso_code"="iso_3","dates"="date"))%>%
    dplyr::group_by(iso_code, country)%>% 
    dplyr::filter(is.na(noaa_station))%>%
    dplyr::summarise(N=n(), first_date=min(dates),last_date=max(dates))%>%
    dplyr::filter(N>100)%>%
    dplyr::arrange(desc(N))%>%
    datatable(filter = 'top',colnames = c('ISO 3-letter' =2,'Country' = 3,'Data Points' = 4),
              caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 27a: ', htmltools::em('Missing Information by Country in NOAA Station (In approx. every date)')),
        options=list(
  initComplete = JS(
        "function(settings, json) {",
        "$(this.api().tables().body()).css({'font-size': '70%'});",
        "}")))
## `summarise()` regrouping output by 'iso_code' (override with `.groups` argument)
#ESP    Spain  FRA  France FIN  Finland BEL Belgium  DNK    Denmark GBR United Kingdom  PRT Portugal NOR    Norway NLD  Netherlands IRL Ireland ISL Iceland SWE Sweden  


Most of these data could not be retrieved because is aggregated by macroregion within countries, but do not represent the whole country. Excluding Eritrea, England in Great Britain & Svalbard in Norway, every country had more than one regional information.We should discuss what would be inclusion criteria in this matter.


country_noaa_data_only_subregions<-
coronavirus_iso3c_3_6%>%
    dplyr::left_join(dplyr::select(weather,iso_3,date,noaa_station, noaa_distance, average_temperature, minimum_temperature, maximum_temperature, rainfall),by=c("iso_code"="iso_3","dates"="date"))%>%
    dplyr::group_by(iso_code, country)%>% 
    dplyr::filter(is.na(noaa_station))%>%
    dplyr::summarise(N=n(), first_date=min(dates),last_date=max(dates))%>%
    dplyr::filter(N>100)%>%
    distinct(iso_code)%>%
    unlist()%>%
    as.character()
## `summarise()` regrouping output by 'iso_code' (override with `.groups` argument)
weather_or <- readr::read_csv("https://storage.googleapis.com/covid19-open-data/v2/weather.csv")%>%
    dplyr::left_join(select(index,key,`3166-1-alpha-3`,subregion1_name,aggregation_level),
                     by=c("key"="key"))%>%
    dplyr::rename("iso_3"=`3166-1-alpha-3`)%>%
    dplyr::filter(iso_3 %in% country_noaa_data_only_subregions)%>%
    select(iso_3,everything())
## Parsed with column specification:
## cols(
##   date = col_date(format = ""),
##   key = col_character(),
##   noaa_station = col_double(),
##   noaa_distance = col_double(),
##   average_temperature = col_double(),
##   minimum_temperature = col_double(),
##   maximum_temperature = col_double(),
##   rainfall = col_double(),
##   snowfall = col_double(),
##   dew_point = col_double(),
##   relative_humidity = col_double()
## )
weather_or%>%
    dplyr::distinct(subregion1_name,.keep_all=T)%>% 
  dplyr::select(iso_3, noaa_station, noaa_distance, subregion1_name)%>%
    datatable(filter = 'top',colnames = c('ISO 3-letter' =2,'Station' = 3,'Distance' = 4, "Subregion"= 5),
              caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 27b: ', htmltools::em('Countries with not aggregated data concerning Climate')),
        options=list(
  initComplete = JS(
        "function(settings, json) {",
        "$(this.api().tables().body()).css({'font-size': '70%'});",
        "}")))
#*The reported weather station refers to the nearest station which provides temperature measurements, but rainfall and snowfall may come from a different nearby weather station. In all cases, only weather stations which are at most 300km from the location coordinates are considered.

#noaa_station= Identifier for the weather station   
#noaa_distance= Distance between the location coordinates and the weather station   
#average_temperature= Recorded hourly average temperature   
#minimum_temperature= Recorded hourly minimum temperature   
#maximum_temperature= Recorded hourly maximum temperature   
#rainfall= Rainfall during the entire day   


In the following two tables we may see countries with missing information in NOAA stations.Most of these countries should not be considered.


coronavirus_iso3c_3_6%>%
  dplyr::left_join(dplyr::select(weather,iso_3,date,noaa_station, noaa_distance, average_temperature, minimum_temperature, maximum_temperature, rainfall),by=c("iso_code"="iso_3","dates"="date"))%>%
    dplyr::group_by(iso_code, country)%>% 
    dplyr::filter(is.na(noaa_station))%>%
    dplyr::summarise(N=n(), first_date=min(dates),last_date=max(dates))%>%
    dplyr::filter(N<=100,N>1)%>%
    dplyr::arrange(desc(N))%>%
    datatable(filter = 'top',colnames = c('ISO 3-letter' =2,'Country' = 3,'Data Points' = 4),
              caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 27c: ', htmltools::em('Missing Information by Country in NOAA Station (Not in every date, but at least in more than one)')),
        options=list(
  initComplete = JS(
        "function(settings, json) {",
        "$(this.api().tables().body()).css({'font-size': '70%'});",
        "}")))
## `summarise()` regrouping output by 'iso_code' (override with `.groups` argument)


Considering this temporary limitations, for now we merged the data for countries with aggregated data only. Meaning that information directly obtained from NOAA was not considered for posterior analyses.


coronavirus_iso3c_3_6%>%
  dplyr::left_join(dplyr::select(weather,iso_3,date,noaa_station, noaa_distance, average_temperature, minimum_temperature, maximum_temperature, rainfall),by=c("iso_code"="iso_3","dates"="date"))->
  coronavirus_iso3c_4

5 Worldwide Indicators

5.1 Corruption Perceptions Index

We accessed Transparency International to query the Coruption Perceptions Index, which ranks 180 countries and territories by their perceived levels if public sector corruption. It is a composite index, a combination of surveys and assessments of corruption, collected by a variety of reputable institutions. The CPI is one of the most widely used indicatora of corruption worldwide. The data is available in the following link.


CPI2019 <- tryCatch(
                            {
                            readxl::read_excel("C:/Users/andre/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/CPI2019.xlsx", skip=2,
    range = "A3:d1000")%>% janitor::clean_names()%>%
  dplyr::filter(!is.na(country))
                            },
                            error = function(e){
                              readxl::read_excel("C:/Users/CISS Fondecyt/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/CPI2019.xlsx", skip=2,
    range = "A3:d1000")%>% janitor::clean_names()%>%
  dplyr::filter(!is.na(country))
                            }
                    )


We first explored for the countries that could not be matched.


CPI2019%>%
  dplyr::anti_join(coronavirus_iso3c_4, by=c("iso3"="iso_code"))%>%
    datatable(filter = 'top', colnames = c('ISO 3-letter' =2,'Country' = 3,'Region' = 4,'CPI Score' = 5),
              caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        'Table 28: ', htmltools::em('Countries of CPI2019 dataset that did not match with our dataset')),
      options=list(
    autoWidth = TRUE,
initComplete = JS(
      "function(settings, json) {",
      "$(this.api().tables().body()).css({'font-size': '80%'});",
      "}")))
#es de 0 a 100


The following Table shows countries that could not be match because they were not available in the dataset of CPI 2019. Most of the countries shown are developed countries or are still in a complicated position in terms of geopolitical matters. We should not consider them.


coronavirus_iso3c_4%>%
  dplyr::left_join(CPI2019, by=c("iso_code"="iso3"), suffix=c("",".y"))%>%
  dplyr::select(-country.y, -region)%>%
  dplyr::filter(is.na(cpi_score_2019))%>%
  dplyr::group_by(iso_code, country)%>%
  dplyr::summarise(N=n(), first_date=min(dates),last_date=max(dates))%>%
    dplyr::arrange(desc(N))%>%
    datatable(filter = 'top',colnames = c('ISO 3-letter' =2,'Country' = 3,'Data Points' = 4),
              caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 29: ', htmltools::em('Missing Information by Country in CPI2019')),
        options=list(
  initComplete = JS(
        "function(settings, json) {",
        "$(this.api().tables().body()).css({'font-size': '70%'});",
        "}")))  
## `summarise()` regrouping output by 'iso_code' (override with `.groups` argument)
coronavirus_iso3c_4%>%
  dplyr::left_join(CPI2019, by=c("iso_code"="iso3"), suffix=c("",".y"))%>%
  dplyr::select(-country.y, -region)->
coronavirus_iso3c_5  
#es de 0 a 100


5.2 UN HDI Dataset

We incorporated the Human Development Index (1990-2018), but some entries did not match with country names of our dataset. Most of them are in a complicated position in geopolitical terms, and other did not correspond to actual countries or had never been one (such as aggregated regions, global, etc.).


hdi <- tryCatch(
  {
      readr::read_csv("C:/Users/andre/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/Human Development Index (HDI).csv", 
    skip = 1)%>% janitor::clean_names()
  },
      error = function(e){
      readr::read_csv("C:/Users/CISS Fondecyt/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/Human Development Index (HDI).csv", 
    skip = 1)%>% janitor::clean_names()
      }
)
## Parsed with column specification:
## cols(
##   .default = col_character()
## )
## See spec(...) for full column specifications.
hdi%>%
  dplyr::select(hdi_rank_2018,country,x2018)%>%
  dplyr::anti_join(coronavirus_iso3c_5,by="country")%>%
  dplyr::distinct(country,.keep_all=T)%>%    
    datatable(filter = 'top', colnames = c('Rank HDI 18' =2,'Country' = 3),
              caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        'Table 30: ', htmltools::em('Countries of HDI dataset that did not match with our dataset')),
      options=list(
    autoWidth = TRUE,
initComplete = JS(
      "function(settings, json) {",
      "$(this.api().tables().body()).css({'font-size': '80%'});",
      "}")))


We standardized the names of many countries. However, we still have problems with a few of them.


hdi<-hdi%>%
  dplyr::mutate(country=case_when(country=="Bolivia (Plurinational State of)"~"Bolivia",
                                country=="Brunei Darussalam"~"Brunei",
                                country=="Cabo Verde"~"Cape Verde",
                                country=="Congo (Democratic Republic of the)"~"Democratic Republic of Congo",
                                country=="Czechia"~"Czech Republic",
                                country=="Côte d'Ivoire"~"Cote d'Ivoire",
                                country=="Eswatini (Kingdom of)"~"Swaziland",
                                country=="Iran (Islamic Republic of)"~"Iran",
                                country=="Korea (Republic of)"~"South Korea",
                                country=="Lao People's Democratic Republic"~"Laos",
                                country=="Syrian Arab Republic"~"Syria",
                                country=="Tanzania (United Republic of)"~"Tanzania",
                                country=="Venezuela (Bolivarian Republic of)"~"Venezuela",
                                country=="Russian Federation"~"Russia",
                                country=="Timor-Leste"~"Timor",
                                country=="Moldova (Republic of)"~"Moldova",
                                country=="Viet Nam"~"Vietnam",TRUE~country))
hdi%>%
  dplyr::select(hdi_rank_2018,country,x2018)%>%
  dplyr::anti_join(coronavirus_iso3c_5,by="country")%>%
  dplyr::distinct(country,.keep_all=T)%>%    
    datatable(filter = 'top', colnames = c('Rank HDI 18' =2,'Country' = 3),
              caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        'Table 31: ', htmltools::em('Countries of HDI dataset that did not match with our dataset (tidy)')),
      options=list(
    autoWidth = TRUE,
initComplete = JS(
      "function(settings, json) {",
      "$(this.api().tables().body()).css({'font-size': '80%'});",
      "}")))


We merged the HDI dataset with our dataset. However, there still are some issues with some of the countries shown in Table 31.


coronavirus_iso3c_5%>%
    dplyr::left_join(dplyr::select(hdi,hdi_rank_2018,country,x2018),by="country")%>%
    dplyr::filter(is.na(hdi_rank_2018))%>%
    dplyr::group_by(iso_code, country)%>% 
    dplyr::summarise(N=n(), first_date=min(dates),last_date=max(dates))%>%
    dplyr::filter(N>100)%>%
    dplyr::arrange(desc(N))%>%
    datatable(filter = 'top',colnames = c('ISO 3-letter' =2,'Country' = 3,'Data Points' = 4),
              caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 32: ', htmltools::em('Missing Information by Country in HDI 2018')),
        options=list(
  initComplete = JS(
        "function(settings, json) {",
        "$(this.api().tables().body()).css({'font-size': '70%'});",
        "}")))
## `summarise()` regrouping output by 'iso_code' (override with `.groups` argument)
coronavirus_iso3c_5%>%
    dplyr::left_join(dplyr::select(hdi,hdi_rank_2018,country,x2018),by="country")%>%
  dplyr::rename("hdi_index_2018"="x2018")%>%
  dplyr::mutate(hdi_rank_2018=as.numeric(hdi_rank_2018))%>%
  dplyr::mutate(hdi_index_2018=as.numeric(hdi_index_2018))->
  coronavirus_iso3c_6
## Warning: Problem with `mutate()` input `hdi_rank_2018`.
## x NAs introducidos por coerción
## i Input `hdi_rank_2018` is `as.numeric(hdi_rank_2018)`.
## Warning in mask$eval_all_mutate(dots[[i]]): NAs introducidos por coerción
## Warning: Problem with `mutate()` input `hdi_index_2018`.
## x NAs introducidos por coerción
## i Input `hdi_index_2018` is `as.numeric(hdi_index_2018)`.
## Warning in mask$eval_all_mutate(dots[[i]]): NAs introducidos por coerción


5.3 Good Country Index

Good country index (v. 1.3) measures how much each of the countries contribute to the planet and the human race through their policies and behaviors, consistent in Science & Technology, Culture, International Peace & Securitym World Order, Planet & Climate, Prosperity & Equality, and Health & Well-being link. Cubre a 153 países. For more information about this index, please go to the following link.


gci_dataset <- tryCatch(
  {
     readxl::read_excel("C:/Users/andre/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/gci dataset.xlsx")
  },
      error = function(e){
        readxl::read_excel("C:/Users/CISS Fondecyt/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/gci dataset.xlsx")
      }
)

gci_dataset%>%
  dplyr::left_join(dplyr::select(index,country_name,`3166-1-alpha-3`), by=c("country"="country_name"))%>%
  dplyr::rename("iso_code"=`3166-1-alpha-3`)%>%
  dplyr::filter(is.na(iso_code))%>%
    datatable(filter = 'top',colnames = c('ISO 3-letter' =2,'Country' = 3),
              caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 33: ', htmltools::em('Missing Information by Country in GCI 2019')),
        options=list(
  initComplete = JS(
        "function(settings, json) {",
        "$(this.api().tables().body()).css({'font-size': '70%'});",
        "}")))


As seen in the above, some countries did not match with ISO codes available due to their condition or character mistypings. We assumed that Republic of Korea corresponded to South Korea. In case of Congo, we did not know if corresponded to Kinshasa or Brazzaville, but we decided to match it with Brazzaville (Republic of Congo).


gci_dataset_iso<-
gci_dataset%>%
  dplyr::left_join(dplyr::select(index,country_name,`3166-1-alpha-3`), by=c("country"="country_name"))%>%
  dplyr::rename("iso_code"=`3166-1-alpha-3`)%>%
  dplyr::mutate(iso_code=dplyr::case_when(country=="Republic of Macedonia / FYROM"~"MKD",
                                          country=="Republic of Korea"~"KOR",
                                          country=="Russian Federation"~"RUS",
                                          country=="Viet Nam"~"VNM",
                                          country=="Brunei Darussalam"~"BRN",
                                          country=="Congo"~"COG",
                                          country=="Côte d'Ivoire"~"CIV",TRUE~iso_code))%>%
  dplyr::distinct(iso_code,.keep_all=T)

coronavirus_iso3c_6%>%
  dplyr::left_join(dplyr::select(gci_dataset_iso, iso_code, rank), by="iso_code")%>%
  dplyr::rename("gci_2018_rank"="rank")->
coronavirus_iso3c_7
#gci_dataset_iso%>%
 # dplyr::filter(is.na(iso_code))
coronavirus_iso3c_7%>%
  dplyr::filter(is.na(gci_2018_rank))%>% 
  dplyr::group_by(iso_code, country)%>%
    dplyr::summarise(N=n(), first_date=min(dates),last_date=max(dates))%>%
    dplyr::filter(N>0)%>%
    dplyr::arrange(desc(N))%>%
    datatable(filter = 'top',colnames = c('ISO 3-letter' =2,'Country' = 3,'Data Points' = 4),
              caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 34: ', htmltools::em('Missing Information by Country in GCI 2019')),
        options=list(
  initComplete = JS(
        "function(settings, json) {",
        "$(this.api().tables().body()).css({'font-size': '70%'});",
        "}")))
## `summarise()` regrouping output by 'iso_code' (override with `.groups` argument)


There are some countries that do not include this indicator because there is not many information available to construct this index (more info on this in the link).


5.4 Economist Intelligence Unit’s Democracy Index


The Unit of Intelligence of The Economist created a Democracy Index of different countries worldwide categorizing them from full democracies through to authoritarian regimes.


The_Economist_Dem_Index <- tryCatch(
  {
     readxl::read_excel("C:/Users/andre/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/The Economist Dem Index.xlsx", 
    skip = 1)%>% janitor::clean_names()
  },
      error = function(e){
        readxl::read_excel("C:/Users/CISS Fondecyt/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/The Economist Dem Index.xlsx", 
    skip = 1)%>% janitor::clean_names()
      }
)

The_Economist_Dem_Index%>%
    dplyr::anti_join(coronavirus_iso3c_7, by="country")%>%
    dplyr::distinct(country,.keep_all=T)%>%
  dplyr::select(country, qualification,rank, everything())%>%
  dplyr::select(1:4)%>%
      datatable(filter = 'top',colnames = c('ISO 3-letter' =2,'Country' = 3,'Rank' = 4,'Overall Score' = 5),
              caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 35: ', htmltools::em('Missing Information by Country in EIU 2019')),
        options=list(
  initComplete = JS(
        "function(settings, json) {",
        "$(this.api().tables().body()).css({'font-size': '70%'});",
        "}")))


As shown in the Table above, most of these countries could not be matched due to mistyping, or because they do not provide data on confirmed cases with COVID-19. For those that were type in a different manner, we changed their names to match with our dataset.


The_Economist_Dem_Index<-
  The_Economist_Dem_Index%>%
    dplyr::mutate(country=dplyr::case_when(country=="United States of America"~"United States",
                                            country=="Cabo Verde"~"Cape Verde",
                                            country=="Timor-Leste"~"Timor",
                                            country=="Kyrgyz Republic"~"Kyrgyzstan",
                                            country=="Côte d’Ivoire"~"Cote d'Ivoire",
                                            country=="Bosnia and Hercegovina"~"Bosnia and Herzegovina",
                                            country=="eSwatini"~"Swaziland",
                                            country=="Congo (Brazzaville)"~"Congo",
                                            country=="Côte d'Ivoire"~"CIV",TRUE~country))%>%
  dplyr::select(country, qualification,rank, overall_score)
  #dplyr::anti_join(coronavirus_iso3c_7, by="country")%>%
  #  dplyr::distinct(country,.keep_all=T)%>%
  #dplyr::select(country, qualification,rank, everything())%>%
  #dplyr::select(1:4)
  
coronavirus_iso3c_7%>%
  dplyr::left_join(The_Economist_Dem_Index, by="country")%>%
  dplyr::rename("eiu_2019_rank"="rank")%>%
  dplyr::rename("eiu_2019_overall_score"="overall_score")->
coronavirus_iso3c_8
#gci_dataset_iso%>%
 # dplyr::filter(is.na(iso_code))
coronavirus_iso3c_8%>%
  dplyr::filter(is.na(eiu_2019_rank))%>% 
  dplyr::group_by(iso_code, country)%>%
    dplyr::summarise(N=n(), first_date=min(dates),last_date=max(dates))%>%
    dplyr::filter(N>0)%>%
    dplyr::arrange(desc(N))%>%
    datatable(filter = 'top',colnames = c('ISO 3-letter' =2,'Country' = 3,'Data Points' = 4),
              caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 36: ', htmltools::em('Missing Information by Country in EIU 2019')),
        options=list(
  initComplete = JS(
        "function(settings, json) {",
        "$(this.api().tables().body()).css({'font-size': '70%'});",
        "}")))
## `summarise()` regrouping output by 'iso_code' (override with `.groups` argument)


As seen in the Table above, most of the countries that were not considered in thisindex are undeveloped countries or in a complicated position in geopolitical terms.


5.5 World Bank datasets


We considered the following additional variables to include them in the dataset: - SP.POP.TOTL= Population, Total

  • EN.POP.DNST= Population Density

  • SH.MED.PHYS.ZS= Physicians (per 1,000 people)

  • SH.MED.BEDS.ZS= Hospital beds (per 1,000 people)

  • EN.ATM.PM25.MC.M3 PM2.5= air pollution, mean annual exposure (micrograms per cubic meter) Brauer, M. et al. 2017, for the Global Burden of Disease Study 2017

  • SP.DYN.LE00.IN= Life expectancy at birth, total (years)


However, we must consider the time span for which we would tolerate lagged years, depending on the amount of countries that had this information updated.


#SH.MED.PHYS.ZS Physicians (per 1,000 people)
#SH.MED.BEDS.ZS Hospital beds (per 1,000 people)
#SH.PRV.SMOK Smoking prevalence, total (ages 15+)
#EN.ATM.PM25.MC.M3 PM2.5 air pollution, mean annual exposure (micrograms per cubic meter) Brauer, M. et al. 2017, for the Global Burden of Disease Study 2017.
require(wbstats)
 #wb(country = "all", indicator = "SH.PRV.SMOK", mrv = 3) #no funciona
data_frame<-data.frame(iso3c="1",N=1, name="1",v="1")
  for (i in c("SP.POP.TOTL","EN.POP.DNST","SH.MED.PHYS.ZS","SH.MED.BEDS.ZS","EN.ATM.PM25.MC.M3","SP.DYN.LE00.IN")) {
      for (v in 1:7){
        df<-wb(country = "all", indicator = i, mrv = v)%>% 
                        group_by(iso3c)%>% summarise(N=n())%>%
          dplyr::mutate(name=paste0(i),v=paste0(v))
          #assign(paste0(i,"_",v),., envir = .GlobalEnv)
        data_frame<-rbind(data_frame,df)
      }
  }
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
## `summarise()` ungrouping output (override with `.groups` argument)
data_frame<-
  data_frame%>%
    dplyr::filter(iso3c!="1")%>%
  dplyr::select(name, iso3c,v,N)%>%
  dplyr::rename("years_covered"="v")%>%
  group_by(name, years_covered)%>%
  dplyr::summarise(no_countries=n())%>%
  ungroup()
## `summarise()` regrouping output by 'name' (override with `.groups` argument)
ggplot(data_frame, aes(x=name, y=no_countries, fill=years_covered))+
  geom_bar(stat="identity")+
  geom_hline(yintercept =170, color="darkred",linetype=5)+
   facet_grid(years_covered~.)+
  theme_minimal()+
  labs(caption="red line= 170 countries")+ 
  theme(legend.position="bottom")+
  guides(fill=guide_legend(ncol=7))
Figure 4.No of Countries By Tolerance on Last Days in Variables of Interest

Figure 4.No of Countries By Tolerance on Last Days in Variables of Interest


Considering the figure above and what we discussed with Kassim & Thamara, we decided to tolerate 6 years of delay in the update of these statistics, in order to include a greater amount of countries.


Additionally, we test whether EN.ATM.PM25.MC.M3 had different values from the consolidated dataset obtained from this link.


  for (i in c("SP.POP.TOTL","EN.POP.DNST","SH.MED.PHYS.ZS","SH.MED.BEDS.ZS","EN.ATM.PM25.MC.M3","SP.DYN.LE00.IN")) {
        wb(country = "all", indicator = i, mrv = 6)%>%
        assign(paste0("wb_",i),.,envir=.GlobalEnv)
  }
#https://docs.google.com/spreadsheets/d/1eeg9dpIlP9jENJsp-cWY51Kw8fojpLnh6mhxORCTPL8/export?format=csv&id=1eeg9dpIlP9jENJsp-cWY51Kw8fojpLnh6mhxORCTPL8&gid=447690624

google_covid19 <- readr::read_csv("https://docs.google.com/spreadsheets/d/1eeg9dpIlP9jENJsp-cWY51Kw8fojpLnh6mhxORCTPL8/export?format=csv&id=1eeg9dpIlP9jENJsp-cWY51Kw8fojpLnh6mhxORCTPL8&gid=0")%>%
  janitor::clean_names() 
## Warning: Duplicated column names deduplicated: 'Health Equality' => 'Health
## Equality_1' [56], 'WHO Medical Doctors per 10K' => 'WHO Medical Doctors per
## 10K_1' [77]
## Parsed with column specification:
## cols(
##   .default = col_double(),
##   NAME_ENGLI = col_character(),
##   ISO3 = col_character(),
##   ISO2 = col_character(),
##   TotalConfirmed = col_character(),
##   TotalDeaths = col_logical(),
##   TotalRecovered = col_logical(),
##   Obesity_both_percent = col_character(),
##   `Historical Experience with Epidemics (21st Century)` = col_character(),
##   `Head of State` = col_character()
## )
## See spec(...) for full column specifications.
#no calza en un puros paises de pija
invisible(
google_covid19 %>%
  dplyr::select(iso3,name_engli,air_pollution)%>%
  dplyr::anti_join(wb_EN.ATM.PM25.MC.M3,by=c("iso3"="iso3c"))
)

invisible(
                  wb_EN.ATM.PM25.MC.M3%>%
                    #dplyr::select(iso3c,name_engli,air_pollution)%>%
                    dplyr::anti_join(google_covid19,by=c("iso3c"="iso3"))%>%
                    dplyr::select(iso3c,country,date)%>%
                    dplyr::group_by(iso3c,country)%>%
                    dplyr::summarise(N=n(),first_date=min(date),last_date=max(date))
)
## `summarise()` regrouping output by 'iso3c' (override with `.groups` argument)
#SELECCIONO EL DATO MAS RECIENTE POR PAIS
invisible(
wb_EN.ATM.PM25.MC.M3%>%
    group_by(iso3c)%>%
    dplyr::filter(!is.na(value))%>%
    dplyr::filter(date==max(date))%>%
  #janitor::tabyl(iso3c,date) #todos 2017
  dplyr::ungroup()%>%
  dplyr::anti_join(google_covid19,by=c("iso3c"="iso3"))
)

#no eran paises los que no calzaron

if(
wb_EN.ATM.PM25.MC.M3%>%
    group_by(iso3c)%>%
    dplyr::filter(!is.na(value))%>%
    dplyr::filter(date==max(date))%>%
  #janitor::tabyl(iso3c,date) #todos 2017
  dplyr::ungroup()%>%
  dplyr::left_join(google_covid19,by=c("iso3c"="iso3"))%>%
  #dplyr::filter(is.na(value)) #no hay perdidos
  dplyr::mutate(distinct=abs(air_pollution-value))%>%
  #dplyr::mutate(distinct=ifelse(air_pollution-value,1,0))%>%
  dplyr::filter(distinct>0.00001)%>%
  dplyr::select(iso3c, name_engli,air_pollution,value,distinct)%>%
  nrow()>0){toupper("**there are differences between covid19 dataset and world bank**")}
#NO HAY DIFERENCIAS MAYORES DE 0.00001

#If you do not know the latest date an indicator you are interested in is available for you country you can use the mrv instead of startdate and enddate. mrv stands for most recent value and takes a integer corresponding to the number of most recent values you wish to return

#If you use the mrv parameter in wb() with mutliple countries or regions, it searches for the most recent dates for which any country or region in your selection has data and then returns the data for those dates. In other words the mrv value is not determined on a country by country basis, rather it is determined across the entire selection.

#Unless you know the country and indicator codes that you want to download the first step would be searching for the data you are interested in. wbsearch() provides grep style searching of all available indicators from the World Bank API and returns the indicator information that matches your query.

#To access what countries or regions are available you can use the countries data frame from either wb_cachelist or the saved return from wbcache(). This data frame contains relevant information regarding each country or region. More information on how to use this for downloading data is covered later.
t1<-wb_SP.POP.TOTL%>% dplyr::group_by(iso3c,country)%>% dplyr::summarise(n=n(),year=max(date))%>% dplyr::arrange(year)
## `summarise()` regrouping output by 'iso3c' (override with `.groups` argument)
t2<-wb_EN.POP.DNST%>% dplyr::group_by(iso3c,country)%>% dplyr::summarise(n=n(),year=max(date))%>% dplyr::arrange(year)
## `summarise()` regrouping output by 'iso3c' (override with `.groups` argument)
t3<-wb_SH.MED.PHYS.ZS%>% dplyr::group_by(iso3c,country)%>% dplyr::summarise(n=n(),year=max(date))%>% dplyr::arrange(year)
## `summarise()` regrouping output by 'iso3c' (override with `.groups` argument)
t4<-wb_SH.MED.BEDS.ZS%>% dplyr::group_by(iso3c,country)%>% dplyr::summarise(n=n(),year=max(date))%>% dplyr::arrange(year)
## `summarise()` regrouping output by 'iso3c' (override with `.groups` argument)
t5<-wb_EN.ATM.PM25.MC.M3%>% dplyr::group_by(iso3c,country)%>% dplyr::summarise(n=n(),year=max(date))%>% dplyr::arrange(year)
## `summarise()` regrouping output by 'iso3c' (override with `.groups` argument)
t6<-wb_SP.DYN.LE00.IN%>% dplyr::group_by(iso3c,country)%>% dplyr::summarise(n=n(),year=max(date))%>% dplyr::arrange(year)
## `summarise()` regrouping output by 'iso3c' (override with `.groups` argument)
coronavirus_iso3c_8%>%
    dplyr::left_join(dplyr::select(wb_SP.POP.TOTL,iso3c,date,value),
                     by=c("iso_code"="iso3c"))%>%
  dplyr::rename("total_pop"="value", "year_total_pop"="date")%>%
  dplyr::filter(is.na(total_pop))%>%
  dplyr::group_by(country, iso_code)%>%
  dplyr::summarise(N=n(), last_date=max(dates),first_date=min(dates))%>%
  dplyr::ungroup()%>%
      datatable(filter = 'top',colnames = c('ISO 3-letter' =2,'Country' = 3,'Data Points' = 4),
              caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 37a: ', htmltools::em('Missing Information by Country in Total Pop')),
        options=list(
  initComplete = JS(
        "function(settings, json) {",
        "$(this.api().tables().body()).css({'font-size': '70%'});",
        "}")))
## `summarise()` regrouping output by 'country' (override with `.groups` argument)
coronavirus_iso3c_8%>%
    dplyr::left_join(dplyr::select(wb_EN.POP.DNST,iso3c,date,value),
                     by=c("iso_code"="iso3c"))%>%
  dplyr::rename("pop_density"="value", "year_pop_density"="date")%>%
  dplyr::filter(is.na(pop_density))%>%
  dplyr::group_by(country, iso_code)%>%
  dplyr::summarise(N=n(), last_date=max(dates),first_date=min(dates))%>%
  dplyr::ungroup()%>%
      datatable(filter = 'top',colnames = c('ISO 3-letter' =2,'Country' = 3,'Data Points' = 4),
              caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 37b: ', htmltools::em('Missing Information by Country in Pop Density')),
        options=list(
  initComplete = JS(
        "function(settings, json) {",
        "$(this.api().tables().body()).css({'font-size': '70%'});",
        "}")))
## `summarise()` regrouping output by 'country' (override with `.groups` argument)
coronavirus_iso3c_8%>%
    dplyr::left_join(dplyr::select(wb_SH.MED.PHYS.ZS,iso3c,date,value),
                     by=c("iso_code"="iso3c"))%>%
  dplyr::rename("physicians_per_1000"="value", "year_physicians_per_1000"="date")%>%
  dplyr::filter(is.na(physicians_per_1000))%>%
  dplyr::group_by(country, iso_code)%>%
  dplyr::summarise(N=n(), last_date=max(dates),first_date=min(dates))%>%
  dplyr::ungroup()%>%
      datatable(filter = 'top',colnames = c('ISO 3-letter' =2,'Country' = 3,'Data Points' = 4),
              caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 37c: ', htmltools::em('Missing Information by Country in No. of Physicians')),
        options=list(
  initComplete = JS(
        "function(settings, json) {",
        "$(this.api().tables().body()).css({'font-size': '70%'});",
        "}")))
## `summarise()` regrouping output by 'country' (override with `.groups` argument)
coronavirus_iso3c_8%>%
    dplyr::left_join(dplyr::select(wb_SH.MED.BEDS.ZS,iso3c,date,value),
                     by=c("iso_code"="iso3c"))%>%
  dplyr::rename("hosp_beds_per_1000"="value", "year_hosp_beds_per_1000"="date")%>%
  dplyr::filter(is.na(hosp_beds_per_1000))%>%
  dplyr::group_by(country, iso_code)%>%
  dplyr::summarise(N=n(), last_date=max(dates),first_date=min(dates))%>%
  dplyr::ungroup()%>%
      datatable(filter = 'top',colnames = c('ISO 3-letter' =2,'Country' = 3,'Data Points' = 4),
              caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 37d: ', htmltools::em('Missing Information by Country in Hospital Beds')),
        options=list(
  initComplete = JS(
        "function(settings, json) {",
        "$(this.api().tables().body()).css({'font-size': '70%'});",
        "}")))
## `summarise()` regrouping output by 'country' (override with `.groups` argument)
coronavirus_iso3c_8%>%
    dplyr::left_join(dplyr::select(wb_EN.ATM.PM25.MC.M3,iso3c,date,value),
                     by=c("iso_code"="iso3c"))%>%
  dplyr::rename("air_pollution_year_pm25"="value", "year_air_pollution_year_pm25"="date")%>%
  dplyr::filter(is.na(air_pollution_year_pm25))%>%
  dplyr::group_by(country, iso_code)%>%
  dplyr::summarise(N=n(), last_date=max(dates),first_date=min(dates))%>%
  dplyr::ungroup()%>%
      datatable(filter = 'top',colnames = c('ISO 3-letter' =2,'Country' = 3,'Data Points' = 4),
              caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 37e: ', htmltools::em('Missing Information by Country in Pollution PM25')),
        options=list(
  initComplete = JS(
        "function(settings, json) {",
        "$(this.api().tables().body()).css({'font-size': '70%'});",
        "}")))
## `summarise()` regrouping output by 'country' (override with `.groups` argument)
coronavirus_iso3c_8%>%
  dplyr::left_join(dplyr::select(wb_SP.DYN.LE00.IN,iso3c,date,value),
                     by=c("iso_code"="iso3c"))%>%
  dplyr::rename("life_exp"="value", "year_life_exp"="date")%>%
  dplyr::filter(is.na(life_exp))%>%
  dplyr::group_by(country, iso_code)%>%
  dplyr::summarise(N=n(), last_date=max(dates),first_date=min(dates))%>%
  dplyr::ungroup()%>%
      datatable(filter = 'top',colnames = c('ISO 3-letter' =2,'Country' = 3,'Data Points' = 4),
              caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 37f: ', htmltools::em('Missing Information by Country in Life Expectancy')),
        options=list(
  initComplete = JS(
        "function(settings, json) {",
        "$(this.api().tables().body()).css({'font-size': '70%'});",
        "}")))
## `summarise()` regrouping output by 'country' (override with `.groups` argument)


Considering the missing data patterns, we decided to merge these indicators anyway.


wb_SP.POP.TOTL<-
  wb_SP.POP.TOTL%>%
    dplyr::group_by(iso3c)%>%
     slice(1)%>%
        ungroup()
wb_EN.POP.DNST<-
  wb_EN.POP.DNST%>%
    dplyr::group_by(iso3c)%>%
     slice(1)%>%
        ungroup()
wb_SH.MED.PHYS.ZS<-
  wb_SH.MED.PHYS.ZS%>%
    dplyr::group_by(iso3c)%>%
     slice(1)%>%
        ungroup()
wb_SH.MED.BEDS.ZS<-
    wb_SH.MED.BEDS.ZS%>%
    dplyr::group_by(iso3c)%>%
     slice(1)%>%
      ungroup()
wb_EN.ATM.PM25.MC.M3<-
    wb_EN.ATM.PM25.MC.M3%>%
    dplyr::group_by(iso3c)%>%
     slice(1)%>%
      ungroup()
wb_SP.DYN.LE00.IN<-
    wb_SP.DYN.LE00.IN%>%
    dplyr::group_by(iso3c)%>%
     slice(1)%>%
      ungroup()

coronavirus_iso3c_9<- coronavirus_iso3c_8%>%
        dplyr::left_join(dplyr::select(wb_SP.POP.TOTL,iso3c,date,value),
                         by=c("iso_code"="iso3c"))%>%
        dplyr::rename("total_pop"="value", "year_total_pop"="date")%>%
        dplyr::left_join(dplyr::select(wb_EN.POP.DNST,iso3c,date,value),
                         by=c("iso_code"="iso3c"))%>%  
        dplyr::rename("pop_density"="value", "year_pop_density"="date")%>%
        dplyr::left_join(dplyr::select(wb_SH.MED.PHYS.ZS,iso3c,date,value),
                         by=c("iso_code"="iso3c"))%>%
        dplyr::rename("physicians_per_1000"="value", "year_physicians_per_1000"="date")%>%
        dplyr::left_join(dplyr::select(wb_SH.MED.BEDS.ZS,iso3c,date,value),
                         by=c("iso_code"="iso3c"))%>%
        dplyr::rename("hosp_beds_per_1000"="value", "year_hosp_beds_per_1000"="date")%>%
        dplyr::left_join(dplyr::select(wb_EN.ATM.PM25.MC.M3,iso3c,date,value),
                         by=c("iso_code"="iso3c"))%>%
        dplyr::rename("air_pollution_year_pm25"="value", "year_air_pollution_year_pm25"="date")%>%
        dplyr::left_join(dplyr::select(wb_SP.DYN.LE00.IN,iso3c,date,value),
                             by=c("iso_code"="iso3c"))%>%
            dplyr::rename("life_exp"="value", "year_life_exp"="date")

5.6 COVID19 dataset indices

Taking into account that EN.ATM.PM25.MC.M3 matched almost perfectly with the source ow World Bank, we considered that the information from this link was reliable.


  • dalys_asthma_normalized: Years of healthy life lost to premature death and disability due to asthma. DALYs are the sum of years of life lost (YLLs) and years lived with disability (YLDs).
  • dalys_lung_disease= “Years of healthy life lost to premature death and disability due to lung disease. DALYs are the sum of years of life lost (YLLs) and years lived with disability (YLDs).”
  • obesity_both_percent= Percentage of Obesity for Both Sexes.


google_covid19%>%
  dplyr::select(iso3,name_engli,dalys_asthma_normalized,dalys_lung_disease, obesity_both_percent)%>%
  dplyr::anti_join(coronavirus_iso3c_9, by=c("iso3"="iso_code"))%>%
        datatable(filter = 'top',colnames = c('ISO 3-letter' =2,'Country' = 3,'Asthma' = 4,'Lung Disease' = 5,"Obesity" =6),
              caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 38: ', htmltools::em('Countries of COVID19 dataset that did not match with our Dataset')),
        options=list(
  initComplete = JS(
        "function(settings, json) {",
        "$(this.api().tables().body()).css({'font-size': '70%'});",
        "}")))


As seen in the Table above, most of these regions had a problematic status in geopolitical terms. Posteriorly, we analized if the merging with our datasets may generate missing data in any country.


coronavirus_iso3c_9%>%
  dplyr::left_join(dplyr::select(google_covid19,iso3,dalys_asthma_normalized,dalys_lung_disease, obesity_both_percent), by=c("iso_code"="iso3"))%>%
  dplyr::mutate(obesity_both_percent=str_replace(obesity_both_percent, "%", ""),
                obesity_both_percent=as.numeric(obesity_both_percent))%>%
  dplyr::group_by(country) %>% 
  summarise_at(vars(dalys_asthma_normalized:obesity_both_percent),~sum(is.na(.))/n())%>%  
  dplyr::mutate(sumVar = rowSums(select(., .dots = all_of(c("dalys_asthma_normalized","dalys_lung_disease","obesity_both_percent")))))%>%
  dplyr::mutate_at(vars(dalys_asthma_normalized:obesity_both_percent),~scales::percent(.))%>%
  dplyr::filter(sumVar>0)%>%
  dplyr::arrange(desc(sumVar))%>%
  dplyr::rename("sum_of_miss"="sumVar")%>%
  dplyr::select(country,sum_of_miss, everything())%>%
        datatable(filter = 'top',
                  colnames = c('Country' =2,'Sum of Missing Data' = 3,'DALYs Asthma' = 4,'DALYs Lung Disease' = 5,"Obesity" =6),
              caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 39: ', htmltools::em('Countries with missing values in COVID19 dataset')),
        options=list(
  initComplete = JS(
        "function(settings, json) {",
        "$(this.api().tables().body()).css({'font-size': '70%'});",
        "}")))


As seen in the Table above, most of these regions had a problematic status in geopolitical terms. That is why we merged the datasets anyway.


coronavirus_iso3c_10<-
    coronavirus_iso3c_9%>%
      dplyr::left_join(dplyr::select(google_covid19,iso3,dalys_asthma_normalized,dalys_lung_disease, obesity_both_percent), by=c("iso_code"="iso3"))%>%
      dplyr::mutate(obesity_both_percent=str_replace(obesity_both_percent, "%", ""),
                    obesity_both_percent=as.numeric(obesity_both_percent))


5.7 Causes of Death, WHO Data

#  WHO Mortality database (MDB)

#The deaths registered in national vital registration systems up to Dec 15 (obtained from [here](https://www.who.int/healthinfo/statistics/mortality_rawdata/en/)), with underlying cause of death as coded by the relevant national authority. More information on this [link](http://www.ccs.neu.edu/home/kathleen/classes/cs3200/WHODocumentation2015.pdf). We selected the maximum available year with information for each country.

#<br>
  
invisible(c("https://rdrr.io/github/eugejoh/WHOmortality/man/download_who.html"))
invisible(c("https://rdrr.io/github/eugejoh/WHOmortality/"))
invisible(c("https://www.rdocumentation.org/packages/heemod/versions/0.9.0/topics/who-mortality"))
#For instance, it would be useful to extract the number of deaths by country around 2016 (if I do not mistake on the year we are finally using) but only those attributed to respiratory infections (A.2 or A.2.2 and A.2.3)

invisible(c(key= "TdicjbOHEEs96ujLEseRyJmqJy0UotIq56pvg3+00/cYJCOdj+1xePAuK+yBx4lU")) 

#
invisible(c("http://svante.mit.edu/~mwli/Li_2019/Data_and_Analysis/Health/WHO/y0_oz_ICD10.R"))

library(WHOmortality)

data(dd_mort)
#List of ICD revision used � see Annex Table 2 below.
#Cause of death � For details consult Part 2 below or ICD publications
#Data files - Last updated: 15 December 2019


mort_df <- import_who("G:/Mi unidad/covid19/","mort")
## Error in mort_l[[1]]: subíndice fuera de  los límites
dd_mort[1:10,1]
##  [1] "Country"  "Admin1"   "Subdiv"   "Year"     "List"     "Cause"   
##  [7] "Sex"      "Frmat"    "IM_Frmat" "Deaths1"
#
country_code_who <-read.csv("https://raw.githubusercontent.com/dancingCamel/WHO-Mortality-Data-API/master/raw_data/country_codes.csv", header=T)
Morticd10_part1 <-read.csv("G:/Mi unidad/covid19/Morticd10_part1", header=T,skip=0)
Morticd10_part2 <- read.csv("G:/Mi unidad/covid19/Morticd10_part2", header=T,skip=0)

rbind(Morticd10_part1,Morticd10_part2)%>%
  dplyr::mutate_at(dplyr::vars(tidyselect::matches("Deaths[0-9]{,2}$|Pop|Lb")), as.numeric)%>%
  dplyr::mutate_at(dplyr::vars("Sex"), as.factor)%>%
  dplyr::mutate_at(dplyr::vars("Year"), as.integer)%>%
  dplyr::left_join(country_code_who, by=c("Country"="country"))%>%
  dplyr::select(Country, name,Admin1,SubDiv, Year, List, Cause, Sex, Frmat, IM_Frmat, Deaths1,Deaths26)%>%
  janitor::clean_names()%>%
  #dplyr::group_by(country)%>%
  #dplyr::mutate(max_yr=max(year)) %>% 
  #dplyr::filter(year==max_yr) %>% #el último año disponible para cada país
  dplyr::ungroup() %>% #janitor::tabyl(admin1)
  dplyr::filter(is.na(admin1)) %>% 
  dplyr::filter(is.na(sub_div)|sub_div=="") %>%  #If both fields 'Admin1' and 'Subdiv' are blank, data reported refer to the country
  dplyr::filter(cause=="AAA") %>% #“# the cause \”AAA\” refers to total deaths from all causes combined\n”,
      dplyr::group_by(country,year) %>% 
  dplyr::mutate(tot_deaths=sum(deaths1)) %>%  #Deaths at all ages
  dplyr::slice(1) %>% 
  dplyr::ungroup() %>%
  dplyr::arrange(name,year) %>% 
  dplyr::select(-deaths1, -deaths26,-sex,-frmat,-im_frmat) %>% 
  assign("Morticd10_total_std_col",.,envir=.GlobalEnv)

Morticd10_total_std_col %>% 
  dplyr::group_by(country) %>% 
  slice(1) %>% 
  assign("Morticd10_total_std_col_filt",.,envir=.GlobalEnv)

write.csv2(Morticd10_total_std_col_filt,"mortality_cntry.csv", row.names=FALSE, na="")

 Morticd10_total_std_col_filt %>% 
dplyr::filter(name=="Chile") #111.914   en DF, pero lo que tengo es 106,388
## # A tibble: 1 x 8
## # Groups:   country [1]
##   country name  admin1 sub_div  year list  cause tot_deaths
##     <int> <chr>  <int> <chr>   <int> <chr> <chr>      <dbl>
## 1    2120 Chile     NA <NA>     1997 104   AAA        78472
#número de años distintos
anos_distintos_por_pais<-
rbind(Morticd10_part1,Morticd10_part2)%>%
  dplyr::mutate_at(dplyr::vars(tidyselect::matches("Deaths[0-9]{,2}$|Pop|Lb")), as.numeric)%>%
  dplyr::mutate_at(dplyr::vars("Sex"), as.factor)%>%
  dplyr::mutate_at(dplyr::vars("Year"), as.integer)%>%
  dplyr::left_join(country_code_who, by=c("Country"="country"))%>%
  dplyr::select(Country, name,Admin1,SubDiv, Year, List, Cause, Sex, Frmat, IM_Frmat, Deaths1,Deaths26)%>%
  janitor::clean_names()%>%
  dplyr::group_by(country)%>%
  dplyr::mutate(max_yr=max(year)) %>% 
  #dplyr::filter(year==max_yr) %>% #el último año disponible para cada país
  dplyr::ungroup() %>% #janitor::tabyl(admin1)
  dplyr::filter(is.na(admin1)) %>% 
  dplyr::filter(is.na(sub_div)|sub_div=="") %>%  #If both fields 'Admin1' and 'Subdiv' are blank, data reported refer to the country
  dplyr::filter(cause=="AAA") %>% #“# the cause \”AAA\” refers to total deaths from all causes combined\n”,
      dplyr::group_by(country) %>% 
  dplyr::mutate(tot_deaths=sum(deaths1)) %>%  #Deaths at all ages
  dplyr::ungroup() %>%
  
  dplyr::group_by(country)%>%
  dplyr::mutate(max_yr=max(year)) %>% 
  dplyr::mutate(ndis_yr=n_distinct(year)) %>% 
  dplyr::ungroup() %>%
  dplyr::select(name,ndis_yr) %>% 
  dplyr::group_by(name)%>%
  slice(1)

dd_icd10<-dd_icd10%>%
  dplyr::mutate(code=as.character(code))

pop <- read.csv("G:/Mi unidad/covid19/pop", header=T,skip=0)%>% janitor::clean_names()

#Morticd10_total_std_col%>%
# dplyr::left_join(dd_icd10, by=c("cause"="code"))

#https://www.cia.gov/library/publications/the-world-factbook/rankorder/2066rank.html


#We selected the following diseases: 
# - 1073= Influenza
# - 1074= Pneumonia
# - 1006= Other Tuberculosis
# - 1005= Respiratory Tuberculosis
# - 1010= Whooping Cough
# - 1020= HIV
# - 1075= Other accute lower respiratorio infections

#ICD-10 Code  Diagnoses
#Upper Respiratory Infections
#J00  Acute Nasopharyngitis (Common Cold)
#J01.90 Acute Sinusitis, Unspecified
#J02.0  Streptococcal Pharyngitis
#J02.9  Acute Pharyngitis, Unspecified
#J03.90 Acute Tonsillitis, Unspecified
#J06.9  Acute Upper Respiratory Infection, Unspecified
#J31.0  Chronic Rhinitis
#J32.9  Chronic Sinusitis, Unspecified
#R05  Cough

#Lower Respiratory Infections
#A37.90 Whooping Cough, Unspecified Species Without Pneumonia
#B97.4  Respiratory Syncytial Virus As The Cause Of Diseases Classified Elsewhere
#J18.9  Pneumonia, Unspecified Organism
#J20.9  Acute Bronchitis, Unspecified
#R06.02 Shortness Of Breath
#R06.89 Other Abnormalities Of Breathing
#R09.1  Pleurisy
#R76.11 Nonspecific Reaction To Tuberculin Skin Test Without Active Tuberculosis


#data("eiu")
#eiu%>%
#    group_by(eiu_country)%>%
#    dplyr::filter(year==max(year))%>% #resulta que todos son 2018
#  knitr::kable(.,format = "html", format.args = list(decimal.mark = ".", big.mark = ","),
#               caption = paste0("Table 27. Whole Dataset (maxmimum)"),
#               align =rep('c', 101)) %>%
#  kableExtra::kable_styling(bootstrap_options = c("striped", "hover"),font_size = 8) %>%
#  kableExtra::add_footnote( c(paste("Note. ",nrow(coronavirus_iso3c_7),"observations")), 
#                            notation = "none") %>%
#  kableExtra::scroll_box(width = "100%", height = "375px")
Morticd10_total_std_col_last_5<-
Morticd10_total_std_col %>% 
  dplyr::group_by(country) %>% 
  top_n(year,n=5) %>% 
  dplyr::ungroup()


Considering that many countries had dissimilar years available, we selected the last five observations of each country.


Sys.setlocale(category = "LC_ALL", locale = "english")
## [1] "LC_COLLATE=English_United States.1252;LC_CTYPE=English_United States.1252;LC_MONETARY=English_United States.1252;LC_NUMERIC=C;LC_TIME=English_United States.1252"
plot_ly(
  x     = ~year, y = ~log10(tot_deaths), 
  color = ~name,
  data  = Morticd10_total_std_col_last_5,
  type = 'scatter',
        mode = 'lines')%>%
  layout(showlegend = FALSE)%>%
 # highlight(on = "plotly_click",off = "plotly_doubleclick")
  #highlight(on = "plotly_hover", off = "plotly_deselect", color = "red")
  highlight(on="plotly_hover",off="plotly_deselect",color="blue",opacityDim=.2, persistent = F)%>%
  layout(xaxis=list(title = "Year", spikethickness=4, spikecolor="gray50"),
         yaxis = list(title = "Sum of Yearly Deaths by Any Cause, Sex & Age (Log10)"))
## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors

## Warning in RColorBrewer::brewer.pal(N, "Set2"): n too large, allowed maximum for palette Set2 is 8
## Returning the palette you asked for with that many colors

Figure 5. Linear Trends of Deaths By Year

#coronavirus_iso3c_10 %>%dplyr::filter(grepl("Mau",country)) %>% dplyr::select(country,iso_code)

Morticd10_total_std_col_last_5%>%
    dplyr::anti_join(coronavirus_iso3c_10, by=c("name"="country"))%>%
  dplyr::group_by(country,name)%>%
  dplyr::summarise(N=n(),min_year=min(year),max_year=max(year))%>%
        datatable(filter = 'top',
                  #colnames = c('ISO 3-letter' =2,'Country' = 3,'Asthma' = 4,'Lung Disease' = 5,"Obesity" =6),
              caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 40: ', htmltools::em('Countries of WHO Mortality that did not match with our Dataset')),
        options=list(
  initComplete = JS(
        "function(settings, json) {",
        "$(this.api().tables().body()).css({'font-size': '70%'});",
        "}")))
## `summarise()` regrouping output by 'country' (override with `.groups` argument)


As seen in the Table above, many of these countries that did not match, correspond to aggregated territories or countries that do not exist at 2020, or are still in a complicated position in geopolitical terms.


#MUS #Mauritius
# Aruba a NLD, hacer suma Netherlands
# Réunion, an overseas region/department of France
# Mayotte, Es un departamento de la región de Francia - France
# Anguilla, un territorio británico en el Caribe oriental,- United Kingdom
# Las Bermudas son un territorio británico en el océano Atlántico Norte- United Kingdom
# British Virgin Islands, a Britain- United Kingdom
# Las Islas Caimán son un territorio británico de ultramar que abarca 3 islas en el mar Caribe occidental- United Kingdom
# La Guayana Francesa es una región francesa de ultramar en la costa noreste de Sudamérica - France
# Guadeloupe- No subdivisions relevant for this standard. Included also as subdivision of France - France
# Martinica es una accidentada isla del Caribe que pertenece a las Antillas Menores. Es una región de ultramar francesa  - France- United Kingdom
# La isla de Montserrat es un territorio británico de ultramar ubicado al sureste de la isla de Puerto Rico, en aguas del mar Caribe.
# Netherlands Antilles- perteneciente al Reino de los Países Bajos
# Puerto Rico -Puerto Rico es una isla del Caribe y un territorio no incorporado de Estados Unidos
# Saint Pierre and Miquelon- San Pedro y Miquelón​ es un archipiélago situado en América del Norte, frente a las costas canadienses de Terranova. Desde 1985 es una colectividad territorial francesa
# Saint Vincent and Grenadines- VCT
# Turks and Caicos Islands  - Turcas y Caicos es un archipiélago de 40 islas bajas con corales en el océano Atlántico, un territorio británico de ultramar al sureste de las Bahamas. 
# United States of America  - cambiar por United States
# Virgin Islands (USA) - cambiar por United States
# Brunei Darussalam- cambiar por Brunei
# Hong Kong SAR - cambiar por china
# Iran (Islamic Republic of) - Iran
# Republic of Korea - South Korea
# Syrian Arab Republic- cambiar por Syria
# TFYR Macedonia- North Macedonia (MKD)
# Republic of Moldova- Moldova
# United Kingdom, England and Wales- United Kingdom
# United Kingdom, Northern Ireland, England and Wales- United Kingdom
# United Kingdom, Scotland- United Kingdom

Morticd10_total_std_col_last_5_std<-
  Morticd10_total_std_col_last_5 %>% 
  dplyr::mutate(name= dplyr::case_when(name=="Aruba"~"Netherlands",
                                          name=="Réunion"~"France",
                                          name=="Mayotte"~"France",
                                          name=="Anguilla"~"United Kingdom",
                                          name=="Bermuda"~"United Kingdom",
                                          name=="British Virgin Islands"~"United Kingdom",
                                          name=="Cayman Islands"~"United Kingdom",
                                          name=="French Guiana"~"France",
                                          name=="Guadeloupe"~"France",
                                          name=="Martinique"~"France",
                                          name=="Montserrat"~"United Kingdom",
                                          name=="Netherlands Antilles   "~"Netherlands",
                                          name=="Puerto Rico"~"United States",
                                          name=="Saint Pierre and Miquelon  "~"France",
                                          name=="Puerto Rico"~"United States",
                                          name=="United States of America"~"United States",
                                          name=="Virgin Islands (USA)"~"United States",
                                          name=="Brunei Darussalam"~"Brunei",
                                          name=="Hong Kong SAR"~"China",
                                          name=="Iran (Islamic Republic of)"~"Iran",
                                          name=="Republic of Korea"~"South Korea",
                                          name=="Syrian Arab Republic"~"Syria",
                                          name=="PTFYR Macedonia"~"North Macedonia",
                                          name=="Republic of Moldova"~"Moldova",
                                          name=="United Kingdom, England and Wales"~"United Kingdom",
                                          name=="United Kingdom, Northern Ireland, England and Wales"~"United Kingdom",
                                          name=="United Kingdom, Scotland"~"United Kingdom",
                                          TRUE~name)) %>% 
  dplyr::group_by(name,year) %>% 
  dplyr::mutate(tot_deaths= sum(tot_deaths,na.rm=T)) %>% 
  dplyr::ungroup() %>% 
  dplyr::group_by(name) %>% 
  top_n(year,n=5) %>% 
  dplyr::ungroup()

    coronavirus_iso3c_10%>%
    dplyr::left_join(dplyr::select(Morticd10_total_std_col_last_5_std,name,year,tot_deaths), by=c("country"="name"))%>%
    dplyr::rename("owid_gbd_year"="year")%>%
    dplyr::group_by(country,iso_code)%>%
    dplyr::filter(is.na(tot_deaths))%>%
    dplyr::summarise(N=n(),min_year=min(dates),max_year=max(dates))%>%
        datatable(filter = 'top',
                  #colnames = c('ISO 3-letter' =2,'Country' = 3,'Asthma' = 4,'Lung Disease' = 5,"Obesity" =6),
              caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 41: ', htmltools::em('Countries of our dataset that did not match with WHO Mortality Data')),
        options=list(
  initComplete = JS(
        "function(settings, json) {",
        "$(this.api().tables().body()).css({'font-size': '70%'});",
        "}")))
## `summarise()` regrouping output by 'country' (override with `.groups` argument)


On the table above, we observe that many countries did not have any information regarding deaths in the WHO database. We decided to discard these data.


5.8 Causes of Death, OWID Data


We obtained the causes of death by country from an OWID repository (available in this link).


ann_no_deaths_by_cause<- tryCatch(
               {
                           read.csv("C:/Users/andre/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/annual-number-of-deaths-by-cause.csv")%>%
          janitor::clean_names()%>%
          dplyr::select(entity, code,year,lower_respiratory_infections_deaths,respiratory_diseases_deaths,diabetes_deaths)
               },
                   error = function(e){
                           read.csv("C:/Users/CISS Fondecyt/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/annual-number-of-deaths-by-cause.csv")%>%
        janitor::clean_names()%>%
        dplyr::select(entity, code,year,lower_respiratory_infections_deaths,respiratory_diseases_deaths,diabetes_deaths)
                   }
             )
## Warning in file(file, "rt"): no fue posible abrir el archivo 'C:/Users/andre/
## Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/
## Databases/annual-number-of-deaths-by-cause.csv': No such file or directory
ann_no_deaths_by_cause%>%
    dplyr::anti_join(coronavirus_iso3c_10, by=c("code"="iso_code"))%>%
  dplyr::group_by(code,entity)%>%
  dplyr::summarise(N=n(),min_year=min(year),max_year=max(year))%>%
        datatable(filter = 'top',
                  #colnames = c('ISO 3-letter' =2,'Country' = 3,'Asthma' = 4,'Lung Disease' = 5,"Obesity" =6),
              caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 42: ', htmltools::em('Countries of OWID Causes Of Death Dataset that did not match with our Dataset')),
        options=list(
  initComplete = JS(
        "function(settings, json) {",
        "$(this.api().tables().body()).css({'font-size': '70%'});",
        "}")))
## `summarise()` regrouping output by 'code' (override with `.groups` argument)


As seen in the Table above, many of these countries that did not match, correspond to aggregated territories or countries that do not exist at 2020, or are still in a complicated position in geopolitical terms.


ann_no_deaths_by_cause <- 
    ann_no_deaths_by_cause%>%
    dplyr::group_by(code)%>%
     slice(1)%>%
        ungroup()

    coronavirus_iso3c_10%>%
    dplyr::left_join(dplyr::select(ann_no_deaths_by_cause,code,year,lower_respiratory_infections_deaths,respiratory_diseases_deaths,diabetes_deaths), by=c("iso_code"="code"))%>%
    dplyr::rename("owid_gbd_year"="year")%>%
    dplyr::group_by(country,iso_code)%>%
    dplyr::filter(is.na(dalys_asthma_normalized))%>%
    dplyr::summarise(N=n(),min_year=min(dates),max_year=max(dates))%>%
        datatable(filter = 'top',
                  #colnames = c('ISO 3-letter' =2,'Country' = 3,'Asthma' = 4,'Lung Disease' = 5,"Obesity" =6),
              caption = htmltools::tags$caption(
          style = 'caption-side: top; text-align: left;',
          'Table 43: ', htmltools::em('Countries of our dataset that did not match with OWID Data')),
        options=list(
  initComplete = JS(
        "function(settings, json) {",
        "$(this.api().tables().body()).css({'font-size': '70%'});",
        "}")))
## `summarise()` regrouping output by 'country' (override with `.groups` argument)


As seen in the Table above, some countries did not contained any information regarding causes of death.


coronavirus_iso3c_11<-
    coronavirus_iso3c_10%>%
    dplyr::left_join(dplyr::select(ann_no_deaths_by_cause,code,year,lower_respiratory_infections_deaths,respiratory_diseases_deaths,diabetes_deaths), by=c("iso_code"="code"))%>%
    dplyr::rename("owid_gbd_year"="year")

5.9 Life Expectancy at Age 60 (e60)

We incorporated the Life expectancy at age 60 (years) (link), as one of the prospect that WHO has available. We had to standardize the names of the following countries: Czechia, Venezuela, Bolivia, Macronesia, Moldova, Russia, North Macedonia, Tanzania, Congo, Sao Tome and Principe, Eswatini, Cabo Verde, Cote d Ivoire, Syria, Iran, Macao, North & South Korea, Brunei, Lao, Timor-Leste, Vietnam, and Guadeloupe.


# Life Expectancy at Age 60 (e60) 
WPP2019_MORT_F13_1_LIFE_EXPECTANCY_60_BOTH_SEXES <-tryCatch(
    {
       readxl::read_excel("C:/Users/andre/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/WPP2019_MORT_F13_1_LIFE_EXPECTANCY_60_BOTH_SEXES.xlsx", 
    skip = 16)%>%
  dplyr::select(3,5,7,`2015-2020`)
    },
    error = function(e){
 readxl::read_excel("C:/Users/CISS Fondecyt/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/WPP2019_MORT_F13_1_LIFE_EXPECTANCY_60_BOTH_SEXES.xlsx", 
    skip = 16)%>%
  dplyr::select(3,5,7,`2015-2020`)
    }
)
who_life_exp_60_both_sex<-
WPP2019_MORT_F13_1_LIFE_EXPECTANCY_60_BOTH_SEXES%>%
  left_join(select(index,country_name,`3166-1-alpha-3`), by=c("Region, subregion, country or area *"="country_name"))%>%
  dplyr::mutate(iso= 
                  dplyr::case_when(`Region, subregion, country or area *`=="Czechia"~"CZE",
                      `Region, subregion, country or area *`=="Venezuela (Bolivarian Republic of)"~"VEN",
                      `Region, subregion, country or area *`=="Bolivia (Plurinational State of)"~"BOL",
                      `Region, subregion, country or area *`=="Micronesia (Fed. States of)"~"FSM",
                      `Region, subregion, country or area *`=="Republic of Moldova"~"MDA",
                      `Region, subregion, country or area *`=="Russian Federation"~"RUS",
                      `Region, subregion, country or area *`=="North Macedonia"~"MKD",
                      `Region, subregion, country or area *`=="United Republic of Tanzania"~"TZA",
                      `Region, subregion, country or area *`=="Congo"~"COG",
                      `Region, subregion, country or area *`=="Sao Tome and Principe"~"STP",
                      `Region, subregion, country or area *`=="Eswatini"~"SWZ",
                      `Region, subregion, country or area *`=="Cabo Verde"~"CPV",
                      `Region, subregion, country or area *`=="Côte d'Ivoire"~"CIV",
                      `Region, subregion, country or area *`=="Syrian Arab Republic"~"SYR",
                      `Region, subregion, country or area *`=="Iran (Islamic Republic of)"~"IRN",
                      `Region, subregion, country or area *`=="China, Macao"~"MAC",
                      `Region, subregion, country or area *`=="Republic of Korea Dem. People's"~"PRK",
                      `Region, subregion, country or area *`=="Republic of Korea"~"KOR",
                      `Region, subregion, country or area *`=="Brunei Darussalam"~"BRN",
                      `Region, subregion, country or area *`=="Lao People's Democratic Republic"~"LAO",
                      `Region, subregion, country or area *`=="Timor-Leste"~"TLS",
                      `Region, subregion, country or area *`=="Viet Nam"~"VNM",
                      `Region, subregion, country or area *`=="Guadeloupe"~"GLP",
                            TRUE~as.character(`3166-1-alpha-3`)))%>%
  distinct(iso,.keep_all=T)
coronavirus_iso3c_11%>%
    dplyr::left_join(dplyr::select(who_life_exp_60_both_sex,iso, `2015-2020`),
                     by=c("iso_code"="iso"))%>%
    dplyr::filter(is.na(`2015-2020`))%>%
    dplyr::group_by(iso_code,country)%>%
    dplyr::summarise(N=n(), last_date=max(dates),first_date=min(dates))%>%
    dplyr::filter(N>0)%>%
    datatable(filter = 'top', colnames = c('ISO 3-letter' =2,'Country' = 3,'Data Points' = 4),
              caption = htmltools::tags$caption(
        style = 'caption-side: top; text-align: left;',
        'Table 44: ', htmltools::em('Countries of our dataset that did not match with  dataset in Life-Expectancy at 60')),
      options=list(
initComplete = JS(
      "function(settings, json) {",
      "$(this.api().tables().body()).css({'font-size': '80%'});",
      "}")))
## `summarise()` regrouping output by 'iso_code' (override with `.groups` argument)


As seen in the Table above, most of these countries did have a complicated position in geopolitical terms. That is why we matched the data anyways.


coronavirus_iso3c_12<-
          coronavirus_iso3c_11%>%
              dplyr::left_join(dplyr::select(who_life_exp_60_both_sex,iso, `2015-2020`),
                               by=c("iso_code"="iso"))%>%
            dplyr::rename("life_exp_15_20"="2015-2020")%>%
            dplyr::group_by(iso_code)%>%
            dplyr::mutate(ndays_zero=row_number()+52)%>%
            ungroup()

6 Exploration

6.1 Missing values By Countries


col_names_df<-coronavirus_iso3c_12%>%
    dplyr::select(population:life_exp_15_20)%>% 
    names()

coronavirus_iso3c_12%>%
  dplyr::group_by(country) %>% 
    summarise_at(vars(population:life_exp_15_20),~sum(is.na(.))/n())%>%
      dplyr::mutate(sumVar = rowSums(select(., .dots = all_of(col_names_df))))%>%
      dplyr::mutate_at(vars(population:eiu_2019_overall_score),~scales::percent(.))%>%
    dplyr::filter(sumVar>0)%>%
    dplyr::arrange(desc(sumVar))%>%
  dplyr::rename("sum_of_miss"="sumVar")%>%
  dplyr::select(country,sum_of_miss, everything())%>%
  knitr::kable(.,format = "html", format.args = list(decimal.mark = ".", big.mark = ","),
               caption = paste0("Table 45. Percentage of Missing data in the Different Time Points By Country"),
               align =rep('c', 101)) %>%
  kableExtra::kable_styling(bootstrap_options = c("striped", "hover"),font_size = 8) %>%
  kableExtra::add_footnote(c(paste("Note. ",nrow(coronavirus_iso3c_12),"observations")), 
                            notation = "none") %>%
  kableExtra::scroll_box(width = "100%", height = "375px")
Table 45. Percentage of Missing data in the Different Time Points By Country
country sum_of_miss population population_density median_age aged_65_older aged_70_older gdp_per_capita extreme_poverty diabetes_prevalence female_smokers male_smokers handwashing_facilities hospital_beds_per_thousand life_expectancy stringency_ind_oxf monthly_temp monthly_prec decade_temp decade_prec month_temp_07 month_rainfall_mm_07 month_temp_16 month_rainfall_mm_16 month_temp_agg97_06 month_temp_agg07_16 month_rain_agg97_06 month_rain_agg07_16 noaa_station noaa_distance average_temperature minimum_temperature maximum_temperature rainfall cpi_score_2019 hdi_rank_2018 hdi_index_2018 gci_2018_rank qualification eiu_2019_rank eiu_2019_overall_score year_total_pop total_pop year_pop_density pop_density year_physicians_per_1000 physicians_per_1000 year_hosp_beds_per_1000 hosp_beds_per_1000 year_air_pollution_year_pm25 air_pollution_year_pm25 year_life_exp life_exp dalys_asthma_normalized dalys_lung_disease obesity_both_percent owid_gbd_year lower_respiratory_infections_deaths respiratory_diseases_deaths diabetes_deaths life_exp_15_20
Kosovo 48.0211268 0% 0% 100% 100% 100% 0% 0% 100% 100% 100% 100% 100% 100% 0.000% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 100% 100% 100% 100% 100% 100% 100% 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Western Sahara 41.0563380 0% 100% 0% 100% 0% 100% 100% 100% 100% 100% 100% 100% 0% 100.000% 0% 0% 0% 0% 100% 100% 100% 100% 100% 100% 100% 100% 0.35% 0.35% 0.35% 0.35% 0.35% 3.87% 100% 100% 100% 100% 100% 100% 100% 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 0 1 1 1 0
San Marino 34.0211268 0% 0% 100% 100% 100% 0% 100% 0% 100% 100% 100% 0% 0% 0.000% 0% 0% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 100% 100% 100% 100% 100% 100% 100% 0 0 0 0 0 0 0 0 1 1 1 1 0 1 0 1 1 1 1 1
Taiwan 33.0211268 0% 100% 0% 100% 0% 100% 100% 100% 100% 100% 100% 100% 0% 0.000% 0% 0% 0% 0% 100% 100% 100% 100% 100% 100% 100% 100% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 100% 100% 100% 0% 0% 0% 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 1
Liechtenstein 28.1478873 0% 0% 100% 100% 100% 100% 100% 0% 100% 100% 100% 0% 0% 100.000% 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 2.46% 2.46% 2.46% 2.46% 2.46% 2.46% 100% 0% 0% 100% 100% 100% 100% 0 0 0 0 1 1 1 1 1 1 0 0 0 1 0 1 1 1 1 1
Monaco 28.0211268 0% 0% 100% 100% 100% 100% 100% 0% 100% 100% 100% 0% 0% 100.000% 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 100% 100% 100% 100% 100% 100% 100% 0 0 0 0 0 0 0 0 1 1 1 1 0 1 0 1 1 1 1 1
South Sudan 27.0000000 0% 100% 0% 0% 0% 0% 100% 0% 100% 100% 100% 100% 0% 0.000% 100% 100% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 0% 0% 0% 100% 100% 100% 100% 0 0 1 1 1 1 1 1 0 0 0 0 0 0 1 0 0 0 0 0
Saint Kitts and Nevis 26.0000000 0% 0% 100% 100% 100% 0% 100% 0% 100% 100% 100% 0% 0% 100.000% 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 100% 0% 0% 100% 100% 100% 100% 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 1 1 1 1
Andorra 25.0070423 0% 0% 100% 100% 100% 100% 100% 0% 0% 0% 100% 100% 0% 0.704% 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 100% 0% 0% 100% 100% 100% 100% 0 0 0 0 0 0 1 1 0 0 1 1 0 0 0 0 0 0 0 1
Marshall Islands 17.0246479 0% 0% 100% 100% 100% 0% 100% 0% 100% 100% 0% 0% 0% 100.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.70% 100% 0% 0% 100% 100% 100% 100% 0 0 0 0 1 1 0 0 0 0 1 1 0 0 0 0 0 0 0 1
Somalia 16.0000000 0% 0% 0% 0% 0% 100% 100% 0% 100% 100% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 0% 100% 100% 100% 100% 100% 100% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Dominica 15.0105634 0% 0% 100% 100% 100% 0% 100% 0% 100% 100% 100% 0% 0% 1.056% 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0% 0% 0% 0% 100% 100% 100% 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1
Macedonia 15.0000000 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 100% 0% 0% 100.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 0% 100% 100% 0% 100% 100% 100% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Democratic Republic of Congo 13.0176056 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 100% 0% 1.761% 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0
Namibia 12.0105634 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 1.056% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 1 1 0 0 0 0 1 1 1 0 0 0 0 0
Saint Vincent and the Grenadines 12.0000000 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 100% 0% 0% 100.000% 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0% 0% 0% 0% 100% 100% 100% 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Eritrea 11.8380282 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 80.63% 80.63% 80.63% 80.63% 80.63% 80.63% 0% 0% 0% 100% 0% 0% 0% 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Antigua and Barbuda 11.0000000 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 100% 0% 0% 100.000% 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 100% 0% 0% 0% 100% 100% 100% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Mauritania 10.7992958 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 100% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 96.48% 96.48% 96.48% 96.48% 96.48% 96.83% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0
Central African Republic 10.0176056 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 0% 0% 0% 1.761% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 0% 0% 0% 100% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Netherlands 10.0176056 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 1.761% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0
Seychelles 10.0035211 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.352% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 0% 0% 0% 0% 100% 100% 100% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Grenada 10.0000000 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 100% 0% 0% 100.000% 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0% 0% 0% 0% 100% 100% 100% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Maldives 9.0246479 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 100% 0% 100.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.70% 0% 0% 0% 100% 100% 100% 100% 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0
Saint Lucia 9.0000000 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 0% 0% 0% 100.000% 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0% 0% 0% 0% 100% 100% 100% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Libya 8.7112676 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 78.52% 78.52% 78.52% 78.52% 78.52% 78.52% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Syria 8.0281690 0% 100% 0% 100% 0% 100% 100% 100% 100% 100% 0% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 100% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Switzerland 8.0105634 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 1.056% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Cape Verde 8.0000000 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Finland 8.0000000 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
France 8.0000000 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Sudan 7.0633803 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.35% 0.00% 0.00% 5.99% 0% 0% 0% 100% 0% 0% 0% 0 0 1 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0
Sao Tome and Principe 7.0387324 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 100.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 2.11% 0% 0% 0% 100% 100% 100% 100% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Belize 7.0211268 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 100% 0% 0% 0% 100% 100% 100% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Guinea-Bissau 7.0211268 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 100% 0% 100.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 100% 0% 0% 0% 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0
Norway 7.0176056 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 1.761% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Sweden 7.0140845 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 1.408% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Denmark 7.0105634 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 1.056% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Iceland 7.0105634 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 1.056% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Ireland 7.0070423 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
United Kingdom 7.0007042 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.070% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Belgium 7.0000000 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Georgia 7.0000000 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Portugal 7.0000000 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Spain 7.0000000 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100.00% 100.00% 100.00% 100.00% 100.00% 100.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Chad 6.6549296 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 100% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 10.92% 10.92% 10.92% 10.92% 10.92% 10.92% 0% 0% 0% 100% 0% 0% 0% 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0
Sierra Leone 6.1760563 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1.76% 1.76% 1.76% 1.76% 1.76% 8.80% 0% 0% 0% 100% 0% 0% 0% 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
Angola 6.0704225 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 0% 100% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1.06% 1.06% 1.06% 1.06% 1.06% 1.76% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0
Venezuela 6.0281690 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 1.06% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bahamas 6.0211268 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 100.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 100% 100% 100% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Lesotho 6.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 100% 0% 0% 0% 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
Solomon Islands 6.0035211 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.35% 0% 0% 0% 100% 100% 100% 100% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Barbados 6.0000000 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0.000% 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0% 0% 0% 0% 100% 100% 100% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Papua New Guinea 5.8697183 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 100% 0% 1.056% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 12.68% 12.68% 12.68% 12.68% 12.68% 22.54% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0
Brunei 5.0422535 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 2.113% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 100% 100% 100% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Cote d’Ivoire 5.0281690 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 100% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0
Congo 5.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0
Equatorial Guinea 5.0211268 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 0% 0% 0% 100.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 100% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Nigeria 4.0845070 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 100% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1.41% 1.41% 1.41% 1.41% 1.41% 1.41% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0
Cameroon 4.0809859 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1.06% 1.06% 1.06% 1.06% 1.06% 2.11% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Afghanistan 4.0211268 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 100% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Malta 4.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 100.000% 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Singapore 4.0211268 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Gabon 3.0422535 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 100% 0% 0% 2.113% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bhutan 3.0211268 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 100% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Cuba 3.0211268 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 100% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Guyana 3.0211268 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Jordan 3.0211268 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Nicaragua 3.0211268 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Senegal 3.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0
Tajikistan 3.0211268 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 100% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Uzbekistan 3.0211268 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 100% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Rwanda 3.0176056 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 1.761% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0
Trinidad and Tobago 3.0000000 0% 0% 0% 0% 0% 0% 100% 0% 100% 100% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Djibouti 2.6302817 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 10.21% 10.21% 10.21% 10.56% 10.56% 11.27% 0% 0% 0% 100% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Guinea 2.1830986 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1.76% 1.76% 1.76% 1.76% 1.76% 8.80% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Belarus 2.1091549 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 9.15% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Botswana 2.0915493 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.70% 0.70% 0.70% 0.70% 0.70% 5.63% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Lebanon 2.0352113 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 1.408% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Saudi Arabia 2.0316901 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.70% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Fiji 2.0281690 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 100% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Iraq 2.0281690 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Kuwait 2.0281690 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Qatar 2.0281690 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
South Africa 2.0281690 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0
United Arab Emirates 2.0281690 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bahrain 2.0211268 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Comoros 2.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 100% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Cyprus 2.0211268 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Czech Republic 2.0211268 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Guatemala 2.0211268 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Japan 2.0211268 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Montenegro 2.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 100.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Poland 2.0211268 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Slovenia 2.0211268 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Burundi 2.0070423 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bolivia 2.0035211 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Germany 2.0035211 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Madagascar 2.0035211 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
New Zealand 2.0000000 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Peru 2.0000000 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Serbia 2.0000000 0% 0% 0% 0% 100% 0% 100% 0% 0% 0% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Zimbabwe 1.9154930 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 31.34% 31.34% 31.34% 31.34% 31.34% 34.15% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Swaziland 1.5598592 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 1.056% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 9.15% 9.15% 9.15% 9.15% 9.15% 9.15% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Malawi 1.2147887 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 19.37% 19.37% 19.37% 19.72% 19.72% 23.94% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Suriname 1.1549296 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1.06% 1.06% 1.06% 1.06% 1.06% 10.21% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Ethiopia 1.1056338 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1.761% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.70% 0.70% 0.70% 0.70% 0.70% 5.28% 0% 0% 0% 100% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Italy 1.0528169 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 3.169% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Nepal 1.0528169 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 3.169% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 100% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Jamaica 1.0492958 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 2.817% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Panama 1.0457746 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 1.761% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 2.82% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Mali 1.0422535 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.70% 1.41% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
United States 1.0389981 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 3.900% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Liberia 1.0387324 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1.056% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 1.06% 0% 0% 0% 100% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Ukraine 1.0387324 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 1.761% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Haiti 1.0352113 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 3.521% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0% 0% 0% 100% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Brazil 1.0316901 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 1.056% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Turkey 1.0316901 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 1.056% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
China 1.0281690 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Greece 1.0281690 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Iran 1.0281690 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Mauritius 1.0281690 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Morocco 1.0281690 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Slovakia 1.0281690 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
South Korea 1.0281690 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Timor 1.0281690 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 100% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Uruguay 1.0281690 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Cambodia 1.0246479 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 2.465% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Luxembourg 1.0246479 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.70% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Albania 1.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Argentina 1.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Armenia 1.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Australia 1.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Austria 1.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Azerbaijan 1.0211268 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Croatia 1.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Estonia 1.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Hungary 1.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Israel 1.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Latvia 1.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Lithuania 1.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Malaysia 1.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Oman 1.0211268 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Philippines 1.0211268 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Russia 1.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Sri Lanka 1.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bulgaria 1.0070423 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Canada 1.0070423 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Myanmar 1.0070423 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0% 0% 0% 100% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Chile 1.0000000 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Honduras 1.0000000 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Romania 1.0000000 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Zambia 0.4683099 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 6.69% 6.69% 6.69% 6.69% 6.69% 12.68% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Uganda 0.4119718 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 39.44% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Ecuador 0.1302817 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1.056% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1.76% 1.76% 1.76% 1.76% 1.76% 3.17% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Yemen 0.0809859 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.70% 0.35% 0.70% 4.93% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Algeria 0.0774648 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 3.521% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.70% 0.70% 0.70% 0.70% 0.70% 0.70% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Gambia 0.0528169 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 3.169% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Indonesia 0.0528169 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 3.169% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bangladesh 0.0387324 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1.408% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.70% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Tanzania 0.0387324 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1.761% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Colombia 0.0352113 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 1.76% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Togo 0.0352113 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1.408% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Dominican Republic 0.0316901 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1.056% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Pakistan 0.0316901 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 1.056% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
El Salvador 0.0281690 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Niger 0.0281690 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.352% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.70% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
India 0.0246479 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.352% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Kazakhstan 0.0246479 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.70% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Moldova 0.0246479 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.352% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Mongolia 0.0246479 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.352% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Benin 0.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Bosnia and Herzegovina 0.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Burkina Faso 0.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Egypt 0.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Ghana 0.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Kyrgyzstan 0.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Mexico 0.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Mozambique 0.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Thailand 0.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Tunisia 0.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Vietnam 0.0211268 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.000% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.35% 0.35% 0.35% 0.35% 0.35% 0.35% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Paraguay 0.0070423 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.704% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0.00% 0.00% 0.00% 0.00% 0.00% 0.00% 0% 0% 0% 0% 0% 0% 0% 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Note. 68728 observations
myvars <- names(coronavirus_iso3c_12) %in% c("ndays") 

vim_agg<-
  VIM::aggr(coronavirus_iso3c_12, col=c('navyblue','yellow'),
                    numbers=F, sortVars=TRUE, prop=c(TRUE,FALSE),
                    labels=names(coronavirus_iso3c_12), cex.axis=.5,
                   combined=T,
                    gap=1, ylab=c("Missing data","Pattern"))
## Registered S3 methods overwritten by 'car':
##   method                          from
##   influence.merMod                lme4
##   cooks.distance.influence.merMod lme4
##   dfbeta.influence.merMod         lme4
##   dfbetas.influence.merMod        lme4

## 
##  Variables sorted by number of missings: 
##                             Variable Count
##               handwashing_facilities 42316
##                      extreme_poverty 18460
##                         male_smokers 13632
##                       female_smokers 13064
##                        gci_2018_rank 10224
##                             rainfall  9212
##                  maximum_temperature  8834
##                  average_temperature  8833
##                  minimum_temperature  8832
##                         noaa_station  8830
##                        noaa_distance  8830
##                                ndays  8446
##                        qualification  6816
##                        eiu_2019_rank  6816
##               eiu_2019_overall_score  6816
##              year_hosp_beds_per_1000  6532
##                   hosp_beds_per_1000  6532
##                   stringency_ind_oxf  6238
##           hospital_beds_per_thousand  5680
##                          decade_temp  4544
##                          decade_prec  4544
##             year_physicians_per_1000  3408
##                  physicians_per_1000  3408
##                        aged_65_older  3124
##                       cpi_score_2019  3124
##                        aged_70_older  2556
##                        year_life_exp  2556
##                             life_exp  2556
##                       life_exp_15_20  2556
##                           median_age  2272
##                       gdp_per_capita  2272
##                        hdi_rank_2018  1988
##                       hdi_index_2018  1988
##         year_air_pollution_year_pm25  1988
##              air_pollution_year_pm25  1988
##                   dalys_lung_disease  1988
##                     year_pop_density  1704
##                          pop_density  1704
##  lower_respiratory_infections_deaths  1704
##          respiratory_diseases_deaths  1704
##                      diabetes_deaths  1704
##                 obesity_both_percent  1420
##                   population_density  1136
##                  diabetes_prevalence  1136
##                        month_temp_07  1136
##                 month_rainfall_mm_07  1136
##                        month_temp_16  1136
##                 month_rainfall_mm_16  1136
##                  month_temp_agg97_06  1136
##                  month_temp_agg07_16  1136
##                  month_rain_agg97_06  1136
##                  month_rain_agg07_16  1136
##                       year_total_pop  1136
##                            total_pop  1136
##                        owid_gbd_year  1136
##              dalys_asthma_normalized   852
##                         monthly_temp   568
##                         monthly_prec   568
##                      life_expectancy   284
##                              country     0
##                             iso_code     0
##                                dates     0
##                           date_month     0
##                                cases     0
##                         cases_deaths     0
##                           ndays_zero     0
##                                 text     0
##                            continent     0
##                           population     0

7 Collapse Information into Data Every 30 Days

We collapsed the information into monthly basis, by selecting the maximum number by each month on time variant variables. Also we deleted some variables related to NOAA (noaa_station, noaa_distance,average_temperature, minimum_temperature,maximum_temperature & rainfall) and some of the World Bank Datasets, due to a great amount of missing values (handwashing_facilities & extreme_poverty, male_smokers, female_smokers).


Must take note that Solomon Islands (SLB) did not have available information in many variables.


if(
coronavirus_iso3c_12%>% 
  dplyr::group_by(iso_code)%>%
      dplyr::mutate(month_temp_16_m=mean(month_temp_16,na.rm=T),
                month_rainfall_mm_16_m=mean(month_rainfall_mm_16,na.rm=T),
                month_temp_07_m=mean(month_temp_07,na.rm=T),
                month_rainfall_mm_07_m=mean(month_rainfall_mm_07,na.rm=T))%>%
  #dplyr::mutate_at(.vars = vars(cases_deaths, cases,ndays_zero,ndays,dates),
  #          .funs = funs(`mth`=max(.,na.rm=T)))%>%
  dplyr::ungroup()%>%
###:#:#:#:#:#:#:#
###:#:#:#:#:#:#:#2020-11-01
#  dplyr::mutate(date_month2=date_month) %>% 
#    dplyr::mutate(month_temp_162=month_temp_16) %>% 
#                  tidyr::pivot_wider(names_from =  date_month2, 
#                                   names_sep="_",
#                                   values_from = month_temp_162)%>%
#  dplyr::group_by(iso_code)%>%
#  dplyr::mutate_at(vars(jan:oct),~max(as.character(.),na.rm=T))%>%
#_#_#_#_#_#_#_#_#_#_
#_#_#_#_#_#_#_#_#_#_
  
#  dplyr::distinct(iso_code,date_month,.keep_all=T)%>%
  dplyr::filter(ndays %in% c(1,30,60,90,120))%>%
  dplyr::select(-noaa_station, -noaa_distance,-average_temperature, -minimum_temperature,- maximum_temperature,-rainfall,-handwashing_facilities,-extreme_poverty, -male_smokers,-female_smokers)%>%
  dplyr::group_by(iso_code)%>%
  dplyr::summarise_all(n_distinct)%>%
  dplyr::filter_at(vars(population:life_exp_15_20), all_vars(.>=2))%>% nrow() >0) #life_exp_15_20 es la última variable después de las reconversiones de tiempo month temp month rainfall y esas 
{stop("We are losing countries due to missing covariates")} 

coronavirus_iso3c_12%>% 
  dplyr::group_by(iso_code)%>%
        dplyr::mutate(month_temp_16_m=mean(month_temp_16,na.rm=T),
                month_rainfall_mm_16_m=mean(month_rainfall_mm_16,na.rm=T),
                month_temp_07_m=mean(month_temp_07,na.rm=T),
                month_rainfall_mm_07_m=mean(month_rainfall_mm_07,na.rm=T))%>%
  
  #dplyr::mutate_at(.vars = vars(cases_deaths, cases,ndays_zero,ndays,stringency_ind_oxf),
  #         .funs = funs(`mth`=max(.)))%>%
  #dplyr::mutate(dates=max(dates))%>%
  dplyr::ungroup()%>%
###:#:#:#:#:#:#:#
###:#:#:#:#:#:#:#2020-11-01
#  dplyr::mutate(date_month2=date_month) %>% 
#    dplyr::mutate(month_temp_162=month_temp_16) %>% 
#                  tidyr::pivot_wider(names_from =  date_month2, 
#                                   names_sep="_",
#                                   values_from = month_temp_162)%>%
#  dplyr::group_by(iso_code)%>%
#  dplyr::mutate_at(vars(jan:oct),~max(as.character(.),na.rm=T))%>%
  
  dplyr::left_join(dplyr::select(temp_exp_16_to_recover_later,-country), by=c("iso_code"="iso3")) %>% 
#_#_#_#_#_#_#_#_#_#_
#_#_#_#_#_#_#_#_#_#_
    
  dplyr::filter(ndays %in% c(1,30,60,90,120))%>%
  #dplyr::distinct(iso_code,date_month,.keep_all=T)%>%
  dplyr::select(-noaa_station, -noaa_distance,-average_temperature, -minimum_temperature,- maximum_temperature,-rainfall,-handwashing_facilities,-extreme_poverty)%>%
  dplyr::select(-male_smokers, -female_smokers, -gci_2018_rank, -year_hosp_beds_per_1000, -hosp_beds_per_1000,
  -qualification, -eiu_2019_rank, -eiu_2019_overall_score, -hospital_beds_per_thousand, 
  -decade_temp, -decade_prec, -year_physicians_per_1000, -physicians_per_1000, -aged_65_older, -cpi_score_2019)%>%
assign("every_30_days_dataset",.,envir=.GlobalEnv)
  #assign("monthly_dataset",.,envir=.GlobalEnv)


We analyzed the variables with missing data. We must determine the tolerable number of missing values. If not, we may ignore that variable.


col_names_df<-every_30_days_dataset%>% #monthly_dataset%>%
    dplyr::select(population:ncol(.))%>% 
    names()

#monthly_dataset%>%
every_30_days_dataset%>%
    dplyr::group_by(country) %>% 
    summarise_at(vars(population:(ncol(.)-1)),~sum(is.na(.))/n())%>%
    dplyr::mutate(sumVar = rowSums(select(., .dots = all_of(col_names_df))))%>%
    summarise_at(vars(population:(ncol(.)-1)),~sum(as.numeric(.)))%>% t()%>% data.frame()%>%
  dplyr::arrange(desc(.))%>%
  knitr::kable(.,format = "html", format.args = list(decimal.mark = ".", big.mark = ","),
               caption = paste0("Table 46. Variables with no. of countries with missing data"),
               align =rep('c', 101)) %>%
  kableExtra::kable_styling(bootstrap_options = c("striped", "hover"),font_size = 8) %>%
  kableExtra::add_footnote(c(paste("Note. ",nrow(every_30_days_dataset),"observations")), 
                            notation = "none") %>%
  kableExtra::scroll_box(width = "100%", height = "375px")
Table 46. Variables with no. of countries with missing data
.
stringency_ind_oxf 19
aged_70_older 9
year_life_exp 9
life_exp 9
life_exp_15_20 9
median_age 8
gdp_per_capita 8
hdi_rank_2018 7
hdi_index_2018 7
year_air_pollution_year_pm25 7
air_pollution_year_pm25 7
dalys_lung_disease 7
year_pop_density 6
pop_density 6
lower_respiratory_infections_deaths 6
respiratory_diseases_deaths 6
diabetes_deaths 6
obesity_both_percent 5
population_density 4
diabetes_prevalence 4
month_temp_07 4
month_rainfall_mm_07 4
month_temp_16 4
month_rainfall_mm_16 4
month_temp_agg97_06 4
month_temp_agg07_16 4
month_rain_agg97_06 4
month_rain_agg07_16 4
year_total_pop 4
total_pop 4
owid_gbd_year 4
month_temp_16_m 4
month_rainfall_mm_16_m 4
month_temp_07_m 4
month_rainfall_mm_07_m 4
jan 4
feb 4
mar 4
apr 4
may 4
jun 4
jul 4
aug 4
sep 4
oct 4
nov 4
dec 4
dalys_asthma_normalized 3
monthly_temp 2
monthly_prec 2
life_expectancy 1
population 0
Note. 1200 observations
#monthly_dataset[,!(names(monthly_dataset) %in% drops)]%>%
every_30_days_dataset[,!(names(every_30_days_dataset) %in% drops)]%>%
  na.omit()%>%
    distinct(iso_code)%>%
    nrow()
df<-data.frame(n=0)
for_imp<- c("aged_70_older", "gdp_per_capita", "year_life_exp", "life_exp", "life_exp_15_20",
"median_age", "year_air_pollution_year_pm25", "air_pollution_year_pm25", "dalys_lung_disease", "hdi_rank_2018",
"hdi_index_2018", "year_pop_density", "pop_density", "lower_respiratory_infections_deaths", "respiratory_diseases_deaths", "diabetes_deaths","obesity_both_percent","population_density","diabetes_prevalence",
"month_temp_16","month_rainfall_mm_16","year_total_pop","total_pop","owid_gbd_year","dalys_asthma_normalized","monthly_temp","monthly_prec","life_expectancy","population")
for (i in 1:length(for_imp)){
  drops <- c(c("ndays", "cases_deaths","cases"),for_imp[i])
monthly_dataset[,!(names(monthly_dataset) %in% drops)]%>%
  na.omit()%>%
    distinct(iso_code)%>%
    nrow()->df2
df<-rbind(df,df2)
}
df<-df[2:length(for_imp),]
data.frame(cbind(for_imp,df))%>% arrange(desc(df))
data.frame(cbind(for_imp,df))%>% arrange(desc(df))

invisible(
    monthly_dataset[,!(names(monthly_dataset) %in% drops)]%>%
          na.omit()%>%
          distinct(iso_code)%>%
          nrow()
)


Posteriorly, we observed those countries that had at missing data in the variables selected. These countries would end up being deleted (Table 45).


#col_names_df<-monthly_dataset%>%
col_names_df<-every_30_days_dataset%>%
    dplyr::select(population:(ncol(.)))%>% 
    names()

paste("One variable that has many missing values: stringency_ind_oxf ",
every_30_days_dataset%>%
      #monthly_dataset%>%
    dplyr::group_by(country) %>% 
    summarise_at(vars(population:(ncol(.)-1)),~sum(is.na(.))/n())%>%
    dplyr::mutate(sumVar = rowSums(select(., .dots = all_of(col_names_df))))%>%
    summarise_at(vars(population:life_exp_15_20),~sum(as.numeric(.)))%>% t()%>% data.frame()%>%
  dplyr::filter(.>=15)%>% round(2),
"%")
## [1] "One variable that has many missing values: stringency_ind_oxf  19 %"
#monthly_dataset%>%
every_30_days_dataset%>%
  dplyr::group_by(country) %>% 
    summarise_at(vars(population:(ncol(.)-1)),~sum(is.na(.))/n())%>%
      dplyr::mutate(sumVar = rowSums(select(., .dots = all_of(col_names_df))))%>%
      dplyr::mutate_at(vars(population:(ncol(.)-1)),~scales::percent(.))%>%
    dplyr::filter(sumVar>0)%>%
    dplyr::arrange(desc(sumVar))%>%
  dplyr::rename("sum_of_miss"="sumVar")%>%
  dplyr::select(country,sum_of_miss, everything())%>%
  #assign("monthly_dataset_miss",.,envir=.GlobalEnv)%>%
  assign("very_30_days_dataset_miss",.,envir=.GlobalEnv)%>%  
  knitr::kable(.,format = "html", format.args = list(decimal.mark = ".", big.mark = ","),
               caption = paste0("Table 47. Percentage of Missing data in the Different Time Points By Country (monthly Data)"),
               align =rep('c', 101)) %>%
  kableExtra::kable_styling(bootstrap_options = c("striped", "hover"),font_size = 8) %>%
  kableExtra::add_footnote(c(paste("Note. ",nrow(every_30_days_dataset),"observations")), 
                            notation = "none") %>%
  kableExtra::scroll_box(width = "100%", height = "375px")
Table 47. Percentage of Missing data in the Different Time Points By Country (monthly Data)
country sum_of_miss population population_density median_age aged_70_older gdp_per_capita diabetes_prevalence life_expectancy stringency_ind_oxf monthly_temp monthly_prec month_temp_07 month_rainfall_mm_07 month_temp_16 month_rainfall_mm_16 month_temp_agg97_06 month_temp_agg07_16 month_rain_agg97_06 month_rain_agg07_16 hdi_rank_2018 hdi_index_2018 year_total_pop total_pop year_pop_density pop_density year_air_pollution_year_pm25 air_pollution_year_pm25 year_life_exp life_exp dalys_asthma_normalized dalys_lung_disease obesity_both_percent owid_gbd_year lower_respiratory_infections_deaths respiratory_diseases_deaths diabetes_deaths life_exp_15_20 month_temp_16_m month_rainfall_mm_16_m month_temp_07_m month_rainfall_mm_07_m jan feb mar apr may jun jul aug sep oct nov dec
Kosovo 48 0% 0% 100% 100% 0% 100% 100% 0% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100%
Western Sahara 42 0% 100% 0% 0% 100% 100% 0% 100% 0% 0% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 0% 100% 0% 0% 100% 100% 100% 0% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100%
San Marino 38 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 0% 0% 0% 0% 100% 100% 100% 100% 0% 100% 0% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100%
Taiwan 38 0% 100% 0% 0% 100% 100% 0% 0% 0% 0% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 0% 0% 0% 0% 0% 0% 0% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100% 100%
Monaco 16 0% 0% 100% 100% 100% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0% 100% 100% 100% 100% 0% 100% 0% 100% 100% 100% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Saint Kitts and Nevis 14 0% 0% 100% 100% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 100% 100% 100% 100% 100% 0% 100% 100% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Liechtenstein 12 0% 0% 100% 100% 100% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 100% 0% 100% 100% 100% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Andorra 6 0% 0% 100% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Marshall Islands 6 0% 0% 100% 100% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
South Sudan 6 0% 100% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Dominica 5 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Eritrea 4 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Macedonia 3 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Namibia 3 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Somalia 3 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Sudan 3 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Syria 3 0% 100% 0% 0% 100% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Antigua and Barbuda 1 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Armenia 1 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Bahamas 1 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Comoros 1 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Cuba 1 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Equatorial Guinea 1 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Grenada 1 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Guinea-Bissau 1 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Maldives 1 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Malta 1 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Montenegro 1 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Saint Lucia 1 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Saint Vincent and the Grenadines 1 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Sao Tome and Principe 1 0% 0% 0% 0% 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Serbia 1 0% 0% 0% 100% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0% 0%
Note. 1200 observations
#excluded_countries<-as.character(unlist(distinct(monthly_dataset_miss,country)))
excluded_countries<-as.character(unlist(distinct(very_30_days_dataset_miss,country)))

#monthly_dataset%>%
every_30_days_dataset%>%
  dplyr::filter(!country %in% excluded_countries)%>%
  dplyr::mutate(rate_lo_resp_inf_dth=lower_respiratory_infections_deaths/100000)%>%
  dplyr::mutate(prop_lo_resp_inf_dth=lower_respiratory_infections_deaths/population)%>%
  dplyr::mutate(life_exp_15_20=as.numeric(life_exp_15_20))%>%
  ungroup()%>%
  #assign("monthly_dataset_comp_wise",.,envir=.GlobalEnv)
  assign("every_30_days_dataset_comp_wise",.,envir=.GlobalEnv)
#105 paises.
#gci_2018_rank  year_hosp_beds_per_1000 hosp_beds_per_1000


 drops2 <- c(c("ndays", "cases_deaths","cases"))
 #monthly_dataset_comp_wise[,!(names(monthly_dataset_comp_wise) %in% drops2)]%>%
  every_30_days_dataset_comp_wise[,!(names(every_30_days_dataset_comp_wise) %in% drops2)]%>%
   na.omit()%>%
    distinct(iso_code)
  copiar_nombres(drops2)


Considering the Table above, we decided to eliminate 32 countries in the dataset that had missing values on variables of interest. This let us with 154 countries.


7.1 Hetcors

We generated a matrix of heterogeneous correlations, to get an idea of the collinearity of variables.


require(polycor)

#monthly_dataset_comp_wise_dt<-monthly_dataset_comp_wise%>% dplyr::select_if(is.numeric)%>% dplyr::select(-stringency_ind_oxf,-owid_gbd_year)%>% dplyr::select(-ends_with("mth")) %>% data.frame()

every_30_days_dataset_comp_wise_dt<-every_30_days_dataset_comp_wise%>% dplyr::select_if(is.numeric)%>% dplyr::select(-stringency_ind_oxf,-owid_gbd_year)%>% dplyr::select(-ends_with("mth")) %>% data.frame()


#Computes a heterogenous correlation matrix, consisting of Pearson product-moment correlations between numeric variables, polyserial correlations between numeric and ordinal variables, and polychoric correlations between 
hetcor_mat<-hetcor(every_30_days_dataset_comp_wise_dt, ML = T, std.err = T, use="complete.obs", bins=4, pd=TRUE)

#mix_cor<- psych::mixedCor(data=monthly_dataset_comp_wise_dt,
          #c=2:20, 
         #p=1, 
         #d=21:27, c(")
#         smooth=TRUE,
#         correct=.5,
#         global=TRUE,
#         ncat=8,
#         use="pairwise",
#         method="kendall",
#         weight=NULL)

# Getting the correlation matrix of the dataset.
# mix_cor$rho

ggcorrplot::ggcorrplot(hetcor_mat$correlations,
          ggtheme = ggplot2::theme_gray,
          colors = c("#E46726", "white", "#6D9EC1"), tl.cex=7) 
Figure 6.Heterogeneous Correlation Matrix

Figure 6.Heterogeneous Correlation Matrix

#owid_covid_data
#iso_code
#location

#land_area_skm
drops3 <- c(c("country", "iso_code", "dates", "date_month", "ndays", "cases_deaths","cases","cases_deaths_mth","cases_mth","ndays_zero_mth","ndays_mth", "rate_lo_resp_inf_dth","lower_respiratory_infections_deaths"))
library(glmulti)

res <- glm(prop_lo_resp_inf_dth ~ total_pop+ pop_density+ hdi_rank_2018+ life_expectancy+diabetes_prevalence+gdp_per_capita+aged_70_older+dalys_asthma_normalized, 
               data=monthly_dataset_comp_wise[,!(names(monthly_dataset_comp_wise) %in% drops3)],
               family = "binomial")
               
plot(res)
##########################################################################################
##################DEBIESE INCORPORAR EL TIPO DE PLAN!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
##########################################################################################
#month_rain_agg07_16_120 month_temp_agg97_06_120 month_temp_agg07_16_120 month_rain_agg97_06_120 month_rainfall_mm_07_120 month_rainfall_mm_16_120 


Finally, we transformed the dataset into a wide format, with the dates 1, 30, 60, and 90. China had missing data in dates in the day 1 and 30, while Solomon Islands had missing information in the days 30, 60 and 90. For China, we replaced the values at day 30 (2019-12-31), with data from WHO (total cases= 27, total deaths=0).


#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#
######3.0.Libro de códigos#####
#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#
#iso_code [152]
#every_30_days_dataset_comp_wise
#monthly_dataset_comp_wise
codebook_data<-every_30_days_dataset_comp_wise%>%
  data.frame(stringsAsFactors = FALSE)%>%
  #dplyr::mutate(ndays_rn=dplyr::case_when(ndays==1~1,ndays==30~2,ndays==60~3,ndays==90~4,TRUE~NA_real_))%>%
  dplyr::mutate(month_temp_16_2=month_temp_16,
                month_rainfall_mm_16_2=month_rainfall_mm_16,
                month_temp_07_2=month_temp_07,
                month_rainfall_mm_07_2=month_rainfall_mm_07)%>%
                dplyr::rename("low_resp_inf_dths"="lower_respiratory_infections_deaths")%>%
                tidyr::pivot_wider(names_from = ndays, #ndays_rn
                                   names_sep="_",
                                   values_from = c(dates, date_month, cases, cases_deaths, ndays_zero, stringency_ind_oxf, monthly_temp, monthly_prec,month_temp_07, month_rainfall_mm_07,
month_temp_16, month_rainfall_mm_16,month_temp_agg97_06,month_temp_agg07_16,month_rain_agg97_06,month_rain_agg07_16))%>% 
  tidyr::unnest()%>%
  dplyr::group_by(iso_code)%>%
  dplyr::mutate_at(vars(dates_1:month_rain_agg07_16_120),~max(.,na.rm=T))%>% #(ncol(.)-1)
  #dplyr::mutate_at(vars(date_month_1 :date_month_90),~max(.,na.rm=T))%>%
  dplyr::slice(1)%>%
  #C:\Users\CISS Fondecyt\Dropbox\Covid-19_2020\Article_SecondManuscript\LT Environmental analysis\Databases\2020-08-04 Revision on China0s missing values.docx
  dplyr::mutate(cases_1=ifelse(iso_code=="CHN",1,cases_1), #no estoy seguro, nadie lo está, pero bueno.
                cases_30=ifelse(iso_code=="CHN",27,cases_30))%>%
  dplyr::mutate(cases_deaths_1=ifelse(iso_code=="CHN",0,cases_deaths_1), #no estoy seguro, nadie lo está, pero bueno.
                cases_deaths_30= ifelse(iso_code=="CHN",0,cases_deaths_30))%>%
  dplyr::mutate(dates_1=ifelse(iso_code=="CHN",as.Date("2019-12-01"),dates_1),
                dates_30= ifelse(iso_code=="CHN",as.Date("2019-12-30"),dates_30))%>%
  dplyr::mutate(date_month_1=ifelse(iso_code=="CHN","nov",date_month_1),
                date_month_30= ifelse(iso_code=="CHN","dec",date_month_30))%>%
  dplyr::mutate(ndays_zero_1=ifelse(iso_code=="CHN",1,ndays_zero_1),
                ndays_zero_30= ifelse(iso_code=="CHN",30,ndays_zero_30))%>%
  dplyr::mutate(monthly_temp_1=ifelse(iso_code=="CHN",0.4797562,monthly_temp_1),
                monthly_temp_30= ifelse(iso_code=="CHN",6.674736,monthly_temp_30))%>%
    dplyr::mutate(monthly_prec_1=ifelse(iso_code=="CHN",16.94781,monthly_prec_1),
                monthly_prec_30= ifelse(iso_code=="CHN",9.502951,monthly_prec_30))%>%
  dplyr::mutate(month_temp_16_1=ifelse(iso_code=="CHN",0.36,month_temp_16_1),
                month_temp_16_30= ifelse(iso_code=="CHN",3.92,month_temp_16_30))%>%
  dplyr::mutate(month_rainfall_mm_16_1=ifelse(iso_code=="CHN",26.6,month_rainfall_mm_16_1),
                month_rainfall_mm_16_30= ifelse(iso_code=="CHN",10.2,month_rainfall_mm_16_30))%>%
  dplyr::mutate(month_temp_agg97_06_1=ifelse(iso_code=="CHN",month_temp_agg97_06_60,month_temp_agg97_06_1),
                month_temp_agg97_06_30= ifelse(iso_code=="CHN",month_temp_agg97_06_60,month_temp_agg97_06_30))%>%
  dplyr::mutate(month_temp_agg07_16_1=ifelse(iso_code=="CHN",month_temp_agg07_16_60,month_temp_agg07_16_1),
                month_temp_agg07_16_30= ifelse(iso_code=="CHN",month_temp_agg07_16_60,month_temp_agg07_16_30))%>%
  dplyr::mutate(month_rain_agg97_06_1=ifelse(iso_code=="CHN",month_rain_agg97_06_60,month_rain_agg97_06_1),
                month_rain_agg97_06_30= ifelse(iso_code=="CHN",month_rain_agg97_06_60,month_rain_agg97_06_30))%>%
  dplyr::mutate(month_rain_agg07_16_1=ifelse(iso_code=="CHN",month_rain_agg07_16_60,month_rain_agg07_16_1),
                month_rain_agg07_16_30= ifelse(iso_code=="CHN",month_rain_agg07_16_60,month_rain_agg07_16_30))%>%
  ungroup()%>%
  dplyr::mutate(month_temp_16=month_temp_16_2,month_rainfall_mm_16=month_rainfall_mm_16_2,month_temp_07=month_temp_07_2,month_rainfall_mm_07=month_rainfall_mm_07_2)%>%
  dplyr::select(-month_temp_16_2, -month_rainfall_mm_16_2, -month_temp_07_2,-month_rainfall_mm_07_2)

#codebook_data%>% dplyr::select(monthly_temp_1,monthly_temp_30,monthly_prec_1,monthly_prec_30,month_temp_16_1,month_temp_16_30,month_rainfall_mm_16_1,month_rainfall_mm_16_30)%>% summary()
#codebook_data%>% dplyr::select(monthly_temp_1,monthly_temp_30,monthly_prec_1,monthly_prec_30,month_temp_16_1,month_temp_16_30,month_rainfall_mm_16_1,month_rainfall_mm_16_30)%>% View()
#dplyr::filter(iso3=="CHN"

#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:
#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:  
colnames(codebook_data)[colSums(is.na(codebook_data)) > 0] #para ver datos perdidos
## [1] "date_month_30"  "date_month_60"  "date_month_90"  "date_month_120"
#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:#:

codebook::metadata(codebook_data)$name <- "Join of Datasets for COVID"
codebook::metadata(codebook_data)$description <- "Owid data is available here (https://github.com/owid/covid-19-data/blob/master/public/data/owid-covid-data-codebook.md); The reported weather station refers to the nearest station which provides temperature measurements, but rainfall and snowfall may come from a different nearby weather station. In all cases, only weather stations which are at most 300km from the location coordinates are considered."

codebook::var_label(codebook_data) <- list(
  country = 'Country Name (OWID)',
  iso_code = '3-letter-ISO Code (OWID)',
  
  #dates = 'Date (Date format) (JHU)',
  #date_month = '3-char Month of Date (Character) (JHU)',
  #cases = 'No. of Confirmed Cases (JHU)',
  #cases_deaths = 'No. of Confirmed Deaths (JHU)',
  
  #ndays = 'Days since the first Confirmed Case by Country (JHU)',
  #ndays_zero = 'Days since the first Confirmed Case (JHU)',
  text = 'Summary of Information Regarding Cases and ID of the Country',
  
  continent = 'Continent of the Country (OWID)',
  population = 'Total Pop. (GAPMINDER, HYDE & UN by OWID)',
  population_density = 'No. people/land area, in km2 (2017) (WB in OWID)',
  median_age = 'Median age of the population, UN projection for 2020 from 2017 (UN in OWID)',
  #aged_65_older = 'Share of the population that is >=65 yrs, most recent year available (WB Dev Ind in OWID)',
  aged_70_older = 'Share of the population that is >=65 yrs, most recent year in 2015 (WB Dev Ind in OWID)',
  gdp_per_capita = 'Gross domestic product at purchasing power parity (constant 2011 international dollars), most recent year available (WB Dev Ind)',
  #extreme_poverty = 'Share of the population living in extreme poverty, most recent year available since 2010 (WB Dev Ind in OWID)',
  #cvd_death_rate = 'Death rate from cardiovascular disease in 2017 (GBD 2017 in OWID)',
  diabetes_prevalence = 'Diabetes prevalence (% of population aged 20 to 79) in 2017 (WB Dev Ind in OWID)',
  #female_smokers = 'Share of women who smoke, most recent year available   (WB Dev Ind in OWID)',
  #male_smokers = 'Share of men who smoke, most recent year available (WB Dev Ind in OWID)',
  #handwashing_facilities = 'Share of the population with basic handwashing facilities on premises, most recent year available  (UN Statistics in OWID)',
  #hospital_beds_per_thousand = 'Hospital beds per 1,000 people, most recent year available since 2010 (OECD, WB, Eurostat in OWID)',
  life_expectancy = 'Life expectancy at birth in 2019 (UN in OWID)',
  
  #stringency_ind_oxf = 'Government Response Stringency Index (OXF)',
  
  #monthly_temp = 'Monthly avg. temperature (celsius) for all 12m from 1901 to 2009 (rWBclimate)',
  #monthly_prec = 'Monthly avg. precipitation (mm) for all 12m from 1901 to 2009 (rWBclimate)',
  #decade_temp = 'Decadanal avg. temperature (celsius) at 2010 (rWBclimate)',
  #decade_prec = 'Decadanal avg. precipitation (mm) at 2010 (rWBclimate)',
  
  #month_temp_16 = 'Avg. Monthly Temperature (celsius) in 2016 (CCKP)',
  #month_rainfall_mm_16 = 'Avg. Monthly Rain (Millimiters) in 2016 (CCKP)', 
  
  #noaa_station = "Identifier for the weather station (NOAA)",
  ##noaa_distance = "Distance between the location coordinates and the weather station  (NOAA)",
  #average_temperature = "Recorded hourly average temperature   (NOAA)",
  #minimum_temperature = "Recorded hourly minimum temperature   (NOAA)",
  #maximum_temperature = "Recorded hourly maximum temperature   (NOAA)",
  #rainfall = "Rainfall during the entire day   (NOAA)",
  
  #cpi_score_2019 =  "Corruption Perceptions Index (0-100) (Transparency Int)",
  
  hdi_rank_2018 =  "Human Development Ranking 2018 (UN)",
  hdi_index_2018 =  "Human Development Index 2018 (0-100) (UN)",
  
  #gci_2018_rank = 'Good Country Index Ranking in 2018 (GCI)',
    
  #qualification = 'Classification Provided in 2019 (EIU)',
  #eiu_2019_rank = 'Democracy Index Ranking in 2019 (EIU)',
  #eiu_2019_overall_score = 'Overall Score in 2019 (EIU)',
  
  year_total_pop = 'Year of the available Population Number (WB)',
  total_pop = 'Population Number (WB)',
  year_pop_density = 'Year of the available Population Density (WB)',
  pop_density = 'Population Number (WB)',
  #year_physicians_per_1000 = 'Year of the available number of Physicians (per 1,000 people) (WB)',
  #physicians_per_1000 = 'Physicians (per 1,000 people) (WB)',
  #year_hosp_beds_per_1000 = 'Year of the available number of Hospital beds (per 1,000 people) (WB)',
  #hosp_beds_per_1000 = 'Hospital beds (per 1,000 people) (WB)',
  year_air_pollution_year_pm25 = 'Year of available Air pollution, mean annual exposure (mm per m^3) for GBD17 (WB)',
  air_pollution_year_pm25 = 'Air pollution, mean annual exposure (mm per m^3) for GBD17 (WB)',
  year_life_exp = 'Year of the available number of Life expectancy at birth (WB)',
  life_exp = 'Life expectancy at birth (WB)',
  
  life_exp_15_20 = 'Expected Life Expectancy at Age 60 (WHO)',

  dalys_asthma_normalized = 'YLLs to premature death and disabillity due to asthma (GBD in COVID19 spreadsheet)',
  dalys_lung_disease = 'YLLs to premature death and disabillity due to lung disease (GBD in COVID19 spreadsheet)',
  obesity_both_percent =  'Percentage of Obesity for Both Sexes (GBD in COVID19 spreadsheet)',
  
  owid_gbd_year = 'Year of the available Data of Global Burden of Disease (GBD in OWID)',
  low_resp_inf_dths = 'Deaths due to Lower Respiratory Infections (GBD in OWID)',
  respiratory_diseases_deaths = 'Deaths due to Respiratory Diseases (GBD in OWID)',
  diabetes_deaths = 'Deaths due to Diabetes (GBD in OWID)',
  life_exp_15_20 = 'Estimated Life expectancy at age 60 (2015-2020) (WHO)',
  
  rate_lo_resp_inf_dth = 'Deaths due to Lower Respiratory Infections per 100M (GBD in OWID)',
  prop_lo_resp_inf_dth = 'Prop. of Deaths due to Lower Respiratory Infections of the Total Pop (GBD in OWID)',
  
  month_temp_16 = 'Avg. Monthly Temperature (celsius) in 2016 (CCKP)',
  month_rainfall_mm_16 =  'Avg. Monthly Rain (Millimiters) in 2016 (CCKP)', 
  month_temp_07 = 'Avg. Monthly Temperature (celsius) in 2007 (CCKP)',
  month_rainfall_mm_07 =  'Avg. Monthly Rain (Millimiters) in 2007 (CCKP)', 
  
  month_temp_16_m = 'Avg. Yearly Temperature (celsius) in 2016 (CCKP)',
  month_rainfall_mm_16_m =  'Avg. Yearly Rain (Millimiters) in 2016 (CCKP)', 
  month_temp_07_m = 'Avg. Yearly  Temperature (celsius) in 2007 (CCKP)',
  month_rainfall_mm_07_m =  'Avg. Yearly Rain (Millimiters) in 2007 (CCKP)', 
  
  #cases_deaths_mth = 'Max. no. of Confirmed Cases in the Month (JHU)',
  #cases_mth = 'Max. no. of Confirmed Deaths in the Month(JHU)',
  #ndays_zero_mth = 'Max. no. of days since the first Confirmed Case (JHU)',
  #ndays_mth = 'Max no. of days since the first Confirmed Case by Country (JHU)',

  #stringency_ind_oxf_mth = 'Government Response Stringency Index in the Month (OXF)'
  dates_1 = 'Date (Date format) at 0 day(s) since first case (JHU)',
  date_month_1 = '3-char Month of Date (Character) at 0 day(s) since first case (JHU)',
  cases_1 = 'No. of Confirmed Deaths at 0 day(s) since first case (JHU)',
  cases_deaths_1 = 'No. of Confirmed Deaths at 0 day(s) since first case (JHU)',
  ndays_zero_1 = 'No. of Days since the first case worldwide at 0 day(s) since first case',
  stringency_ind_oxf_1 = 'Government Response Stringency Index at 0 day(s) since first case (OXF)',
  monthly_temp_1 = 'Monthly avg. temperature (celsius) for all 12m from 1901 to 2009 at 0 day(s) since first case (rWBclimate)',
  monthly_prec_1 = 'Monthly avg. precipitation (mm) for all 12m from 1901 to 2009 at 0 day(s) since first case (rWBclimate)',
  month_temp_16_1 = 'Avg. Monthly Temperature (celsius) in 2016 at 0 day(s) since first case (CCKP)',
  month_rainfall_mm_16_1 =  'Avg. Monthly Rain (Millimiters) in 2016 at 0 day(s) since first case (CCKP)', 
  month_temp_07_1 = 'Avg. Monthly Temperature (celsius) in 2007 at 0 day(s) since first case (CCKP)',
  month_rainfall_mm_07_1 =  'Avg. Monthly Rain (Millimiters) in 2007 at 0 day(s) since first case (CCKP)', 
  #dates = 'Date (Date format) (JHU)',
  #date_month = '3-char Month of Date (Character) (JHU)',
  #cases = 'No. of Confirmed Cases (JHU)',
  #cases_deaths = 'No. of Confirmed Deaths (JHU)',
    dates_30 = 'Date (Date format) at 30 day(s) since first case (JHU)',
  date_month_30 = '3-char Month of Date (Character) at 30 day(s) since first case (JHU)',
  cases_30 = 'No. of Confirmed Deaths at 30 day(s) since first case (JHU)',
  cases_deaths_30 = 'No. of Confirmed Deaths at 30 day(s) since first case (JHU)',
  ndays_zero_30 = 'No. of Days since the first case worldwide at 30 day(s) since first case',
  stringency_ind_oxf_30 = 'Government Response Stringency Index at 30 day(s) since first case (OXF)',
  monthly_temp_30 = 'Monthly avg. temperature (celsius) for all 12m from 1901 to 2009 at 30 day(s) since first case (rWBclimate)',
  monthly_prec_30 = 'Monthly avg. precipitation (mm) for all 12m from 1901 to 2009 at 30 day(s) since first case (rWBclimate)',
  month_temp_16_30 = 'Avg. Monthly Temperature (celsius) in 2016 at 30 day(s) since first case (CCKP)',
  month_rainfall_mm_16_30 =  'Avg. Monthly Rain (Millimiters) in 2016 at 30 day(s) since first case (CCKP)',
  month_temp_07_30 = 'Avg. Monthly Temperature (celsius) in 2007 at 30 day(s) since first case (CCKP)',
  month_rainfall_mm_07_30 =  'Avg. Monthly Rain (Millimiters) in 2007 at 30 day(s) since first case (CCKP)', 
  
  dates_60 = 'Date (Date format) at 60 day(s) since first case (JHU)',
  date_month_60 = '3-char Month of Date (Character) at 60 day(s) since first case (JHU)',
  cases_60 = 'No. of Confirmed Deaths at 60 day(s) since first case (JHU)',
  cases_deaths_60 = 'No. of Confirmed Deaths at 60 day(s) since first case (JHU)',
  ndays_zero_60 = 'No. of Days since the first case worldwide at 60 day(s) since first case',
  stringency_ind_oxf_60 = 'Government Response Stringency Index at 60 day(s) since first case (OXF)',
  monthly_temp_60 = 'Monthly avg. temperature (celsius) for all 12m from 1901 to 2009 at 60 day(s) since first case (rWBclimate)',
  monthly_prec_60 = 'Monthly avg. precipitation (mm) for all 12m from 1901 to 2009 at 60 day(s) since first case (rWBclimate)',
  month_temp_16_60 = 'Avg. Monthly Temperature (celsius) in 2016 at 60 day(s) since first case (CCKP)',
  month_rainfall_mm_16_60 =  'Avg. Monthly Rain (Millimiters) in 2016 at 60 day(s) since first case (CCKP)', 
  month_temp_07_60 = 'Avg. Monthly Temperature (celsius) in 2007 at 60 day(s) since first case (CCKP)',
  month_rainfall_mm_07_60 =  'Avg. Monthly Rain (Millimiters) in 2007 at 60 day(s) since first case (CCKP)', 
  
  jan = 'Avg. Monthly Temperature (celsius) in 2016, January',
  feb = 'Avg. Monthly Temperature (celsius) in 2016, February',
  mar = 'Avg. Monthly Temperature (celsius) in 2016, March',
  apr = 'Avg. Monthly Temperature (celsius) in 2016, April',
  may = 'Avg. Monthly Temperature (celsius) in 2016, May',
  jul = 'Avg. Monthly Temperature (celsius) in 2016, July',
  aug = 'Avg. Monthly Temperature (celsius) in 2016, August',
  sep = 'Avg. Monthly Temperature (celsius) in 2016, September',
  oct = 'Avg. Monthly Temperature (celsius) in 2016, October',
  nov = 'Avg. Monthly Temperature (celsius) in 2016, November',
  dec = 'Avg. Monthly Temperature (celsius) in 2016, December',
  
    dates_90 = 'Date (Date format) at 90 day(s) since first case (JHU)',
  date_month_90 = '3-char Month of Date (Character) at 90 day(s) since first case (JHU)',
  cases_90 = 'No. of Confirmed Deaths at 90 day(s) since first case (JHU)',
  cases_deaths_90 = 'No. of Confirmed Deaths at 90 day(s) since first case (JHU)',
  ndays_zero_90 = 'No. of Days since the first case worldwide at 90 day(s) since first case',
  stringency_ind_oxf_90 = 'Government Response Stringency Index at 90 day(s) since first case (OXF)',
  monthly_temp_90 = 'Monthly avg. temperature (celsius) for all 12m from 1901 to 2009 at 90 day(s) since first case (rWBclimate)',
  monthly_prec_90 = 'Monthly avg. precipitation (mm) for all 12m from 1901 to 2009 at 90 day(s) since first case (rWBclimate)',
  month_temp_16_90 = 'Avg. Monthly Temperature (celsius) in 2016 at 90 day(s) since first case (CCKP)',
  month_rainfall_mm_16_90 =  'Avg. Monthly Rain (Millimiters) in 2016 at 90 day(s) since first case (CCKP)',
  month_temp_07_90 = 'Avg. Monthly Temperature (celsius) in 2007 at 90 day(s) since first case (CCKP)',
  month_rainfall_mm_07_90 =  'Avg. Monthly Rain (Millimiters) in 2007 at 90 day(s) since first case (CCKP)',
  
  dates_120 = 'Date (Date format) at 120 day(s) since first case (JHU)',
  date_month_120 = '3-char Month of Date (Character) at 120 day(s) since first case (JHU)',
  cases_120 = 'No. of Confirmed Deaths at 120 day(s) since first case (JHU)',
  cases_deaths_120 = 'No. of Confirmed Deaths at 120 day(s) since first case (JHU)',
  ndays_zero_120 = 'No. of Days since the first case worldwide at 120 day(s) since first case',
  stringency_ind_oxf_120 = 'Government Response Stringency Index at 120 day(s) since first case (OXF)',
  monthly_temp_120 = 'Monthly avg. temperature (celsius) for all 12m from 1901 to 2009 at 120 day(s) since first case (rWBclimate)',
  monthly_prec_120 = 'Monthly avg. precipitation (mm) for all 12m from 1901 to 2009 at 120 day(s) since first case (rWBclimate)',
  month_temp_16_120 = 'Avg. Monthly Temperature (celsius) in 2016 at 120 day(s) since first case (CCKP)',
  month_rainfall_mm_16_120 =  'Avg. Monthly Rain (Millimiters) in 2016 at 120 day(s) since first case (CCKP)',
  month_temp_07_120 = 'Avg. Monthly Temperature (celsius) in 2007 at 120 day(s) since first case (CCKP)',
  month_rainfall_mm_07_120 =  'Avg. Monthly Rain (Millimiters) in 2007 at 120 day(s) since first case (CCKP)',
  
  month_rain_agg97_06_1 = 'Avg. Decennial Rain (Millimiters) 1997-2006 at at 0 day(s) since first case (CCKP)',
  month_rain_agg97_06_30 = 'Avg. Decennial Rain (Millimiters) 1997-2006 at at 30 day(s) since first case (CCKP)',
  month_rain_agg97_06_60 = 'Avg. Decennial Rain (Millimiters) 1997-2006 at at 60 day(s) since first case (CCKP)',
  month_rain_agg97_06_90 = 'Avg. Decennial Rain (Millimiters) 1997-2006 at at 90 day(s) since first case (CCKP)',
  month_rain_agg97_06_120 = 'Avg. Decennial Rain (Millimiters) 1997-2006 at at 120 day(s) since first case (CCKP)',

  month_temp_agg07_16_1 = 'Avg. Decennial Temp (Millimiters) 2007-2016 at at 0 day(s) since first case (CCKP)',
  month_temp_agg07_16_30 = 'Avg. Decennial Temp (Millimiters) 2007-2016 at at 30 day(s) since first case (CCKP)',
  month_temp_agg07_16_60 = 'Avg. Decennial Temp (Millimiters) 2007-2016 at at 60 day(s) since first case (CCKP)',
  month_temp_agg07_16_90 = 'Avg. Decennial Temp (Millimiters) 2007-2016 at at 90 day(s) since first case (CCKP)',
  month_temp_agg07_16_120 = 'Avg. Decennial Temp (Millimiters) 2007-2016 at at 120 day(s) since first case (CCKP)',
  
  month_temp_agg97_06_1 = 'Avg. Decennial Temp (Millimiters) 1997-2006 at at 0 day(s) since first case (CCKP)',
  month_temp_agg97_06_30 = 'Avg. Decennial Temp (Millimiters) 1997-2006 at at 30 day(s) since first case (CCKP)',
  month_temp_agg97_06_60 = 'Avg. Decennial Temp (Millimiters) 1997-2006 at at 60 day(s) since first case (CCKP)',
  month_temp_agg97_06_90 = 'Avg. Decennial Temp (Millimiters) 1997-2006 at at 90 day(s) since first case (CCKP)',
  month_temp_agg97_06_120 = 'Avg. Decennial Temp (Millimiters) 1997-2006 at at 120 day(s) since first case (CCKP)',

  month_rain_agg07_16_1 = 'Avg. Decennial Rain (Millimiters) 2007-2016 at at 0 day(s) since first case (CCKP)',
  month_rain_agg07_16_30 = 'Avg. Decennial Rain (Millimiters) 2007-2016 at at 30 day(s) since first case (CCKP)',
  month_rain_agg07_16_60 = 'Avg. Decennial Rain (Millimiters) 2007-2016 at at 60 day(s) since first case (CCKP)',
  month_rain_agg07_16_90 = 'Avg. Decennial Rain (Millimiters) 2007-2016 at at 90 day(s) since first case (CCKP)',
  month_rain_agg07_16_120 = 'Avg. Decennial Rain (Millimiters) 2007-2016 at at 120 day(s) since first case (CCKP)'
)

codebook_data<-codebook_data%>%
  dplyr::mutate(dates_1=as.Date(dates_1))%>%
  dplyr::mutate(dates_30=as.Date(dates_30))
                  
  
df_def<-
data.frame(cbind(var_name= names(codebook_data),var_def=data.table(codebook::var_label(codebook_data), keep.rownames = T), type=data.table(sapply(codebook_data, class)),can_be_na=data.table(rep(FALSE,length(names(codebook_data))))))%>%
  dplyr::rename("var_def"="var_def.V1","type"="type.V1","can_be_na"="can_be_na.V1")


#World Bank Climate Data, Aggregated Decennial. decennial average temperature (celsius) and rainfall (milliliters) from the Climate Change Knowledge Portal, by getting the average number of the available monthly data by country: one from 1997-2006, and other from 2017-2016
library(cshapes)      # for historic country boundaries.  Load this early as it calls plyr which clashes with dplyr
library(ggplot2)
library(scales)
library(RColorBrewer) # for brewer.pal(...)
library(openxlsx)
library(countrycode)  # for ISO country codes
library(ggthemes)     # for theme_map
library(dplyr)
library(tidyr)        # for reshaping the UTIP EHII data

      # thanks to cshapes project for historical countries: http://nils.weidmann.ws/projects/cshapes.html
      
      world2 <- cshp()      
      
      codebook_data_long<- codebook_data%>% pivot_longer(cols =starts_with("cases_deaths"),names_to = "days",values_to="cases_deaths")%>%
        dplyr::mutate(days=case_when(days=="cases_deaths_1"~1,
                                  days=="cases_deaths_30"~30,
                                  days=="cases_deaths_60"~60,
                                  days=="cases_deaths_90"~90,
                                  days=="cases_deaths_120"~120,
                                  TRUE~NA_real_))%>%
                dplyr::select(iso_code,country,cases_deaths,days)

      
      # convert the shapefile into a data frame for use with ggplot2,
      # and join it to the ISO3 country codes for later use:
      world_map <- fortify(world2) %>%
        left_join(data_frame(id = rownames(world2@data), iso3c = world2@data$ISO1AL3))
      # filter the data to those five years and take the average
      # of any years of data we have for each country in those 
      # years:
    #   the_data <- monthly_dataset_comp_wise %>%
    #     group_by(iso3c) %>%
    #     dplyr::summarise(Gini = mean(Gini, na.rm = TRUE)) %>%
    #     filter(!is.na(Gini))
      
      # these next messages and printing are checks to see which  monthly_dataset_comp_wise
      # if any countries we are missing out on drawing due to
      # data mismatches:
      #all_gini_countries <- unique(monthly_dataset_comp_wise$iso_code)
      all_gini_countries <- unique(codebook_data_long$iso_code)
      all_map_countries <- unique(world_map$iso3c)
      
      missed1 <- sum(!all_map_countries %in% all_gini_countries)
      missed2 <- sum(!all_gini_countries %in% all_map_countries)
      missed3 <- sum(is.na(world2@data$ISO1AL3))
      message(paste(missed1, "countries in map but no Gini", i))
      message(paste(missed2, "countries have a Gini but no map in ", i))
      message(paste(missed3, "countries have no iso3c code in", i))
      
      # print the countries that had data which wasn't mapped
      print(all_gini_countries[!all_gini_countries %in% all_map_countries])
## character(0)
      # Puerto Rico, Macau and Hong Kong often are missing from the map
      # DDR has data 1970 to 1988 and won't be shown
      # ERI has data from 1963 despite not really being a country until 1993
      #     If we use 1995 maps it will show up but we have to drop DDR.
      # PNG has data pre its independence in 1975; need a map from later than
      #     1975 for its borders to show up.
      
      # Back to the main routine needed for drawing the map.         
      # Merge the Gini coefficient data with the world map
      #the_data <- right_join(monthly_dataset_comp_wise, 
      the_data <- right_join(codebook_data_long, 
                             world_map, by = c("iso_code"="iso3c"))
      fechas_distintas<- length(unique(the_data$days))-1
      # Draw the map
 ggplot(the_data) +
        aes(x = long, y = lat, group = group, fill = cases_deaths) +
        geom_polygon(colour = "grey20", size = 0.3) +
        theme_map(base_size = 10, base_family = "myfont") +
        coord_equal() +
        #scale_y_continuous(labels = unit_format(unit = "M", scale = 1e-6))+
        scale_fill_gradientn(colours = brewer.pal(6, "Reds"), #na.value = "white",limits = limits, 
                             trans=log10_trans()) +
        theme(legend.position = c(0, 0)) +
        labs(fill = "Deaths(MM)",
             caption = "@ags") +
        theme(legend.title.align = 0.5)+
        #transition_manual(dates)+
        transition_manual(days)+
        theme(plot.caption = element_text(face = "italic",size=9))+
        ease_aes("linear")+
        enter_grow() +
        enter_fade()+
        ggtitle("Deaths attributed to COVID19 over different days since the first case: {frame}")+
        labs(caption= "Note. Each time frame correspond to the 1st epidemiological day of the country,30th (=2), 60th (=3), 90th (=4), and 120th (=5)")
Figure 7.Worlwide View of the Number of Deaths since each country's first diagnosed

Figure 7.Worlwide View of the Number of Deaths since each country’s first diagnosed

    # Combine all the frames into a single animated GIF, using ImageMagick
    # note since upgrade to v7 ImageMagick uses magick not convert, which makes
    # things much easier for Windows users (no conflict with Windows convert, which
    # does something completely different)
 #dplyr::filter(ndays %in% c(1,30,60,90))%>%

8 Shiny Application

You can access our web app from here.

9 Codebook Deployment

invisible(c("DataExp"))
#https://boxuancui.github.io/DataExplorer/
#DataExplorer::create_report(coronavirus_iso3c_8)
    
mostrar="no"
    if(mostrar=="si"){
        ExPanDaR::ExPanD(df = codebook_data,
               export_nb_option = F,  #para proteger la base de datos
               title= "COVID19 Exploration of Dataset", 
               abstract= "Summarised information of the variables. ID: iso_code" ,
               df_name= "COVID19_Cons", 
              # df_def= df_def,
               cs_id = "iso_code",
               key_phrase = "ags", #proteger la bd
               store_encrypted= T) 
    }

library(codebook)

# to import an SPSS file from the same folder uncomment and edit the line below
# codebook_data <- rio::import("mydata.sav")
# for Stata
# codebook_data <- rio::import("mydata.dta")
# for CSV
# codebook_data <- rio::import("mydata.csv")

# omit the following lines, if your missing values are already properly labelled
codebook_data <- detect_missing(codebook_data,
    only_labelled = TRUE, # only labelled values are autodetected as
                                   # missing
    negative_values_are_missing = FALSE, # negative values are missing values
    ninety_nine_problems = FALSE,   # 99/999 are missing values, if they
                                   # are more than 5 MAD from the median
    )

# If you are not using formr, the codebook package needs to guess which items
# form a scale. The following line finds item aggregates with names like this:
# scale = scale_1 + scale_2R + scale_3R
# identifying these aggregates allows the codebook function to
# automatically compute reliabilities.
# However, it will not reverse items automatically.
codebook_data <- detect_scales(codebook_data)
## Warning in detect_scales(codebook_data): hdi_rank items found, but no aggregate
## Warning in detect_scales(codebook_data): hdi_index items found, but no aggregate
## Warning in detect_scales(codebook_data): year_air_pollution_year_pm items found,
## but no aggregate
## Warning in detect_scales(codebook_data): air_pollution_year_pm items found, but
## no aggregate
## Warning in detect_scales(codebook_data): life_exp_15 items found, but no
## aggregate
## Warning in detect_scales(codebook_data): dates items found, but no aggregate
## Warning in detect_scales(codebook_data): date_month items found, but no
## aggregate
## Warning in detect_scales(codebook_data): cases items found, but no aggregate
## Warning in detect_scales(codebook_data): cases_deaths items found, but no
## aggregate
## Warning in detect_scales(codebook_data): ndays_zero items found, but no
## aggregate
## Warning in detect_scales(codebook_data): stringency_ind_oxf items found, but no
## aggregate
## Warning in detect_scales(codebook_data): monthly_temp items found, but no
## aggregate
## Warning in detect_scales(codebook_data): monthly_prec items found, but no
## aggregate
## Error in if (round(corr, 2) < 1) {: valor ausente donde TRUE/FALSE es necesario
      tryCatch(
                     {
      save.image("C:/Users/andre/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/merged_data_proj_post_ago.RData")
      rio::export(codebook_data, "C:/Users/andre/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/merged_data_post_ago.dta")
                     },
                         error = function(e){
      save.image("C:/Users/CISS Fondecyt/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/merged_data_proj_post_ago.RData")
      rio::export(codebook_data, "C:/Users/CISS Fondecyt/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/Databases/merged_data_post_ago.dta")
                         }
                   )
## Warning in gzfile(file, "wb"): cannot open compressed file 'C:/Users/andre/
## Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/
## Databases/merged_data_proj_post_ago.RDataTmp', probable reason 'No such file or
## directory'
## Warning in file.remove(outfile): no fue posible abrir el archivo 'C:/Users/
## andre/Dropbox/Covid-19_2020/Article_SecondManuscript/LT Environmental analysis/
## Databases/merged_data_proj_post_ago.RDataTmp', motivo 'No such file or
## directory'
sessionInfo()
## R version 4.0.2 (2020-06-22)
## Platform: x86_64-w64-mingw32/x64 (64-bit)
## Running under: Windows 10 x64 (build 18363)
## 
## Matrix products: default
## 
## locale:
## [1] LC_COLLATE=English_United States.1252 
## [2] LC_CTYPE=English_United States.1252   
## [3] LC_MONETARY=English_United States.1252
## [4] LC_NUMERIC=C                          
## [5] LC_TIME=English_United States.1252    
## 
## attached base packages:
## [1] stats     graphics  grDevices utils     datasets  methods   base     
## 
## other attached packages:
##  [1] openxlsx_4.1.5       RColorBrewer_1.1-2   scales_1.1.1        
##  [4] cshapes_0.6          plyr_1.8.6           maptools_1.0-1      
##  [7] WHOmortality_0.0.0.9 climate_0.9.6        wbstats_0.2         
## [10] countrycode_1.2.0    curl_4.3             rgeos_0.5-3         
## [13] ggthemes_4.2.0       tweenr_1.0.1         rworldmap_1.3-6     
## [16] sp_1.4-2             geojson_0.3.2        sjPlot_2.8.4        
## [19] textreg_0.1.5        RCurl_1.98-1.2       RJSONIO_1.3-1.4     
## [22] jsonlite_1.7.0       estimatr_0.22.0      rjson_0.2.20        
## [25] janitor_2.0.1        panelView_1.1.2      zoo_1.8-8           
## [28] forecast_8.12        lattice_0.20-41      ggseas_0.5.4        
## [31] DT_0.15              data.table_1.13.0    gifski_0.8.6        
## [34] gapminder_0.3.0      gganimate_1.0.6      forcats_0.5.0       
## [37] stringr_1.4.0        purrr_0.3.4          readr_1.3.1         
## [40] tidyr_1.1.1          tibble_3.0.3         tidyverse_1.3.0     
## [43] htmlwidgets_1.5.1    lubridate_1.7.9      dplyr_1.0.1         
## [46] plotly_4.9.2.1       codebook_0.9.2       ggcorrplot_0.1.3    
## [49] ggplot2_3.3.2        polycor_0.7-10       ExPanDaR_0.5.1      
## [52] wwmetrics_0.1.0      rWBclimate_0.1.5.91 
## 
## loaded via a namespace (and not attached):
##   [1] estimability_1.3      jqr_1.1.0             coda_0.19-3          
##   [4] knitr_1.29            multcomp_1.4-13       generics_0.0.2       
##   [7] callr_3.4.3           TH.data_1.0-10        usethis_1.6.1        
##  [10] webshot_0.5.2         xml2_1.3.2            httpuv_1.5.4         
##  [13] assertthat_0.2.1      xfun_0.16             hms_0.5.3            
##  [16] evaluate_0.14         promises_1.1.1        DEoptimR_1.0-8       
##  [19] fansi_0.4.1           progress_1.2.2        dbplyr_1.4.4         
##  [22] readxl_1.3.1          DBI_1.1.0             quantmod_0.4.17      
##  [25] ellipsis_0.3.1        crosstalk_1.1.0.1     backports_1.1.7      
##  [28] insight_0.9.0         vctrs_0.3.2           remotes_2.2.0        
##  [31] TTR_0.23-6            abind_1.4-5           sjlabelled_1.1.6     
##  [34] withr_2.2.0           robustbase_0.93-6     vcd_1.4-7            
##  [37] rgdal_1.5-8           emmeans_1.4.8         xts_0.12-0           
##  [40] prettyunits_1.1.1     pacman_0.5.1          dotCall64_1.0-0      
##  [43] x13binary_1.1.39-2    lazyeval_0.2.2        laeken_0.5.1         
##  [46] urca_1.3-0            crayon_1.3.4          pkgconfig_2.0.3      
##  [49] slam_0.1-47           labeling_0.3          units_0.6-6          
##  [52] nlme_3.1-148          pkgload_1.1.0         rematch_1.0.1        
##  [55] nnet_7.3-14           devtools_2.3.0        rlang_0.4.7          
##  [58] lifecycle_0.2.0       sandwich_2.5-1        modelr_0.1.8         
##  [61] cellranger_1.1.0      rprojroot_1.3-2       lmtest_0.9-37        
##  [64] Matrix_1.2-18         seasonal_1.7.0        carData_3.0-4        
##  [67] boot_1.3-25           reprex_0.3.0          processx_3.4.3       
##  [70] viridisLite_0.3.0     parameters_0.8.2      bitops_1.0-6         
##  [73] KernSmooth_2.23-17    spam_2.5-1            texreg_1.37.1        
##  [76] blob_1.2.1            classInt_0.4-3        ggeffects_0.15.1     
##  [79] memoise_1.1.0         magrittr_1.5          compiler_4.0.2       
##  [82] kableExtra_1.1.0      lme4_1.1-23           snakecase_0.11.0     
##  [85] cli_2.0.2             ps_1.3.3              Formula_1.2-3        
##  [88] MASS_7.3-51.6         tidyselect_1.1.0      stringi_1.4.6        
##  [91] tseries_0.10-47       highr_0.8             yaml_2.2.1           
##  [94] askpass_1.1           grid_4.0.2            tools_4.0.2          
##  [97] parallel_4.0.2        rio_0.5.16            rstudioapi_0.11      
## [100] foreign_0.8-80        gridExtra_2.3         farver_2.0.3         
## [103] digest_0.6.25         shiny_1.5.0           quadprog_1.5-8       
## [106] Rcpp_1.0.5            car_3.0-8             broom_0.7.0          
## [109] performance_0.4.8     later_1.1.0.1         httr_1.4.2           
## [112] sf_0.9-3              effectsize_0.3.2      sjstats_0.18.0       
## [115] colorspace_1.4-1      ranger_0.12.1         rvest_0.3.6          
## [118] XML_3.99-0.3          fs_1.5.0              splines_4.0.2        
## [121] fields_10.3           statmod_1.4.34        sessioninfo_1.1.1    
## [124] xtable_1.8-4          nloptr_1.2.2.2        timeDate_3043.102    
## [127] NLP_0.2-0             testthat_2.3.2        R6_2.4.1             
## [130] tm_0.7-7              pillar_1.4.6          htmltools_0.5.0      
## [133] mime_0.9              tictoc_1.0            VIM_6.0.0            
## [136] glue_1.4.1            fastmap_1.0.1         minqa_1.2.4          
## [139] class_7.3-17          codetools_0.2-16      maps_3.3.0           
## [142] utf8_1.1.4            pkgbuild_1.1.0        mvtnorm_1.1-1        
## [145] zip_2.1.1             openssl_1.4.2         survival_3.1-12      
## [148] rmarkdown_2.5         desc_1.2.0            munsell_0.5.0        
## [151] e1071_1.7-3           labelled_2.5.0        sjmisc_2.8.5         
## [154] haven_2.3.1           fracdiff_1.5-1        reshape2_1.4.4       
## [157] gtable_0.3.0          shinycssloaders_1.0.0 bayestestR_0.7.2
codebook::codebook(codebook_data) #638622
## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.

9.0.1 Metadata

9.0.1.1 Description

Dataset name: Join of Datasets for COVID

Owid data is available here (https://github.com/owid/covid-19-data/blob/master/public/data/owid-covid-data-codebook.md); The reported weather station refers to the nearest station which provides temperature measurements, but rainfall and snowfall may come from a different nearby weather station. In all cases, only weather stations which are at most 300km from the location coordinates are considered.

Metadata for search engines
  • Date published: 2020-11-08
x
country
iso_code
text
continent
population
population_density
median_age
aged_70_older
gdp_per_capita
diabetes_prevalence
life_expectancy
hdi_rank_2018
hdi_index_2018
year_total_pop
total_pop
year_pop_density
pop_density
year_air_pollution_year_pm25
air_pollution_year_pm25
year_life_exp
life_exp
dalys_asthma_normalized
dalys_lung_disease
obesity_both_percent
owid_gbd_year
low_resp_inf_dths
respiratory_diseases_deaths
diabetes_deaths
life_exp_15_20
month_temp_16_m
month_rainfall_mm_16_m
month_temp_07_m
month_rainfall_mm_07_m
jan
feb
mar
apr
may
jun
jul
aug
sep
oct
nov
dec
rate_lo_resp_inf_dth
prop_lo_resp_inf_dth
dates_1
dates_30
dates_60
dates_90
dates_120
date_month_1
date_month_30
date_month_60
date_month_90
date_month_120
cases_1
cases_30
cases_60
cases_90
cases_120
cases_deaths_1
cases_deaths_30
cases_deaths_60
cases_deaths_90
cases_deaths_120
ndays_zero_1
ndays_zero_30
ndays_zero_60
ndays_zero_90
ndays_zero_120
stringency_ind_oxf_1
stringency_ind_oxf_30
stringency_ind_oxf_60
stringency_ind_oxf_90
stringency_ind_oxf_120
monthly_temp_1
monthly_temp_30
monthly_temp_60
monthly_temp_90
monthly_temp_120
monthly_prec_1
monthly_prec_30
monthly_prec_60
monthly_prec_90
monthly_prec_120
month_temp_07_1
month_temp_07_30
month_temp_07_60
month_temp_07_90
month_temp_07_120
month_rainfall_mm_07_1
month_rainfall_mm_07_30
month_rainfall_mm_07_60
month_rainfall_mm_07_90
month_rainfall_mm_07_120
month_temp_16_1
month_temp_16_30
month_temp_16_60
month_temp_16_90
month_temp_16_120
month_rainfall_mm_16_1
month_rainfall_mm_16_30
month_rainfall_mm_16_60
month_rainfall_mm_16_90
month_rainfall_mm_16_120
month_temp_agg97_06_1
month_temp_agg97_06_30
month_temp_agg97_06_60
month_temp_agg97_06_90
month_temp_agg97_06_120
month_temp_agg07_16_1
month_temp_agg07_16_30
month_temp_agg07_16_60
month_temp_agg07_16_90
month_temp_agg07_16_120
month_rain_agg97_06_1
month_rain_agg97_06_30
month_rain_agg97_06_60
month_rain_agg97_06_90
month_rain_agg97_06_120
month_rain_agg07_16_1
month_rain_agg07_16_30
month_rain_agg07_16_60
month_rain_agg07_16_90
month_rain_agg07_16_120
month_temp_16
month_rainfall_mm_16
month_temp_07
month_rainfall_mm_07

#Variables

9.0.2 country

Country Name (OWID)

9.0.2.1 Distribution

Distribution of values for country

Distribution of values for country

0 missing values.

9.0.2.2 Summary statistics

name label data_type n_missing complete_rate n_unique empty min max whitespace
country Country Name (OWID) character 0 1 154 0 4 28 0

9.0.3 iso_code

3-letter-ISO Code (OWID)

9.0.3.1 Distribution

Distribution of values for iso_code

Distribution of values for iso_code

0 missing values.

9.0.3.2 Summary statistics

name label data_type n_missing complete_rate n_unique empty min max whitespace
iso_code 3-letter-ISO Code (OWID) character 0 1 154 0 3 3 0

9.0.4 text

Summary of Information Regarding Cases and ID of the Country

9.0.4.1 Distribution

Distribution of values for text

Distribution of values for text

0 missing values.

9.0.4.2 Summary statistics

name label data_type n_missing complete_rate n_unique empty min max whitespace
text Summary of Information Regarding Cases and ID of the Country character 0 1 154 0 105 129 0

9.0.5 continent

Continent of the Country (OWID)

9.0.5.1 Distribution

Distribution of values for continent

Distribution of values for continent

0 missing values.

9.0.5.2 Summary statistics

name label data_type n_missing complete_rate n_unique empty min max whitespace
continent Continent of the Country (OWID) character 0 1 6 0 4 13 0

9.0.6 population

Total Pop. (GAPMINDER, HYDE & UN by OWID)

9.0.6.1 Distribution

Distribution of values for population

Distribution of values for population

0 missing values.

9.0.6.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
population Total Pop. (GAPMINDER, HYDE & UN by OWID) numeric 0 1 98340 1.1e+07 1.4e+09 49285883 164765463 <U+2587><U+2581><U+2581><U+2581><U+2581>

9.0.7 population_density

No. people/land area, in km2 (2017) (WB in OWID)

9.0.7.1 Distribution

Distribution of values for population_density

Distribution of values for population_density

0 missing values.

9.0.7.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
population_density No. people/land area, in km2 (2017) (WB in OWID) numeric 0 1 2 80 7916 190.1184 663.4134 <U+2587><U+2581><U+2581><U+2581><U+2581>

9.0.8 median_age

Median age of the population, UN projection for 2020 from 2017 (UN in OWID)

9.0.8.1 Distribution

Distribution of values for median_age

Distribution of values for median_age

0 missing values.

9.0.8.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
median_age Median age of the population, UN projection for 2020 from 2017 (UN in OWID) numeric 0 1 15 29 48 30.43961 9.169418 <U+2587><U+2586><U+2587><U+2586><U+2586>

9.0.9 aged_70_older

Share of the population that is >=65 yrs, most recent year in 2015 (WB Dev Ind in OWID)

9.0.9.1 Distribution

Distribution of values for aged_70_older

Distribution of values for aged_70_older

0 missing values.

9.0.9.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
aged_70_older Share of the population that is >=65 yrs, most recent year in 2015 (WB Dev Ind in OWID) numeric 0 1 0.53 3.7 18 5.588071 4.379814 <U+2587><U+2583><U+2582><U+2582><U+2581>

9.0.10 gdp_per_capita

Gross domestic product at purchasing power parity (constant 2011 international dollars), most recent year available (WB Dev Ind)

9.0.10.1 Distribution

Distribution of values for gdp_per_capita

Distribution of values for gdp_per_capita

0 missing values.

9.0.10.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
gdp_per_capita Gross domestic product at purchasing power parity (constant 2011 international dollars), most recent year available (WB Dev Ind) numeric 0 1 661 12039 116936 19236.85 20339.09 <U+2587><U+2583><U+2581><U+2581><U+2581>

9.0.11 diabetes_prevalence

Diabetes prevalence (% of population aged 20 to 79) in 2017 (WB Dev Ind in OWID)

9.0.11.1 Distribution

Distribution of values for diabetes_prevalence

Distribution of values for diabetes_prevalence

0 missing values.

9.0.11.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
diabetes_prevalence Diabetes prevalence (% of population aged 20 to 79) in 2017 (WB Dev Ind in OWID) numeric 0 1 0.99 6.9 22 7.507403 3.954864 <U+2585><U+2587><U+2583><U+2581><U+2581>

9.0.12 life_expectancy

Life expectancy at birth in 2019 (UN in OWID)

9.0.12.1 Distribution

Distribution of values for life_expectancy

Distribution of values for life_expectancy

0 missing values.

9.0.12.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
life_expectancy Life expectancy at birth in 2019 (UN in OWID) numeric 0 1 53 74 85 72.77286 7.552101 <U+2581><U+2583><U+2585><U+2587><U+2586>

9.0.13 hdi_rank_2018

Human Development Ranking 2018 (UN)

9.0.13.1 Distribution

Distribution of values for hdi_rank_2018

Distribution of values for hdi_rank_2018

0 missing values.

9.0.13.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
hdi_rank_2018 Human Development Ranking 2018 (UN) numeric 0 1 1 92 189 93.16883 56.32513 <U+2587><U+2587><U+2586><U+2587><U+2587>

9.0.14 hdi_index_2018

Human Development Index 2018 (0-100) (UN)

9.0.14.1 Distribution

Distribution of values for hdi_index_2018

Distribution of values for hdi_index_2018

0 missing values.

9.0.14.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
hdi_index_2018 Human Development Index 2018 (0-100) (UN) numeric 0 1 0.38 0.73 0.95 0.7167792 0.1550553 <U+2583><U+2585><U+2585><U+2587><U+2587>

9.0.15 year_total_pop

Year of the available Population Number (WB)

9.0.15.1 Distribution

Distribution of values for year_total_pop

Distribution of values for year_total_pop

0 missing values.

9.0.15.2 Summary statistics

name label data_type n_missing complete_rate n_unique empty min max whitespace
year_total_pop Year of the available Population Number (WB) character 0 1 1 0 4 4 0

9.0.16 total_pop

Population Number (WB)

9.0.16.1 Distribution

Distribution of values for total_pop

Distribution of values for total_pop

0 missing values.

9.0.16.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
total_pop Population Number (WB) numeric 0 1 97625 1.1e+07 1.4e+09 48537585 161612515 <U+2587><U+2581><U+2581><U+2581><U+2581>

9.0.17 year_pop_density

Year of the available Population Density (WB)

9.0.17.1 Distribution

Distribution of values for year_pop_density

Distribution of values for year_pop_density

0 missing values.

9.0.17.2 Summary statistics

name label data_type n_missing complete_rate n_unique empty min max whitespace
year_pop_density Year of the available Population Density (WB) character 0 1 2 0 4 4 0

9.0.18 pop_density

Population Number (WB)

9.0.18.1 Distribution

Distribution of values for pop_density

Distribution of values for pop_density

0 missing values.

9.0.18.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
pop_density Population Number (WB) numeric 0 1 2 80 7953 192.1285 667.8814 <U+2587><U+2581><U+2581><U+2581><U+2581>

9.0.19 year_air_pollution_year_pm25

Year of available Air pollution, mean annual exposure (mm per m^3) for GBD17 (WB)

9.0.19.1 Distribution

Distribution of values for year_air_pollution_year_pm25

Distribution of values for year_air_pollution_year_pm25

0 missing values.

9.0.19.2 Summary statistics

name label data_type n_missing complete_rate n_unique empty min max whitespace
year_air_pollution_year_pm25 Year of available Air pollution, mean annual exposure (mm per m^3) for GBD17 (WB) character 0 1 1 0 4 4 0

9.0.20 air_pollution_year_pm25

Air pollution, mean annual exposure (mm per m^3) for GBD17 (WB)

9.0.20.1 Distribution

Distribution of values for air_pollution_year_pm25

Distribution of values for air_pollution_year_pm25

0 missing values.

9.0.20.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
air_pollution_year_pm25 Air pollution, mean annual exposure (mm per m^3) for GBD17 (WB) numeric 0 1 5.9 22 100 28.31558 19.93367 <U+2587><U+2583><U+2582><U+2581><U+2581>

9.0.21 year_life_exp

Year of the available number of Life expectancy at birth (WB)

9.0.21.1 Distribution

Distribution of values for year_life_exp

Distribution of values for year_life_exp

0 missing values.

9.0.21.2 Summary statistics

name label data_type n_missing complete_rate n_unique empty min max whitespace
year_life_exp Year of the available number of Life expectancy at birth (WB) character 0 1 1 0 4 4 0

9.0.22 life_exp

Life expectancy at birth (WB)

9.0.22.1 Distribution

Distribution of values for life_exp

Distribution of values for life_exp

0 missing values.

9.0.22.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
life_exp Life expectancy at birth (WB) numeric 0 1 53 74 84 72.51147 7.607603 <U+2581><U+2583><U+2585><U+2587><U+2586>

9.0.23 dalys_asthma_normalized

YLLs to premature death and disabillity due to asthma (GBD in COVID19 spreadsheet)

9.0.23.1 Distribution

Distribution of values for dalys_asthma_normalized

Distribution of values for dalys_asthma_normalized

0 missing values.

9.0.23.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
dalys_asthma_normalized YLLs to premature death and disabillity due to asthma (GBD in COVID19 spreadsheet) numeric 0 1 -0.12 0.19 1 0.2130519 0.1613113 <U+2583><U+2587><U+2582><U+2581><U+2581>

9.0.24 dalys_lung_disease

YLLs to premature death and disabillity due to lung disease (GBD in COVID19 spreadsheet)

9.0.24.1 Distribution

Distribution of values for dalys_lung_disease

Distribution of values for dalys_lung_disease

0 missing values.

9.0.24.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
dalys_lung_disease YLLs to premature death and disabillity due to lung disease (GBD in COVID19 spreadsheet) numeric 0 1 0.01 0.033 0.1 0.0340995 0.0148934 <U+2587><U+2587><U+2583><U+2581><U+2581>

9.0.25 obesity_both_percent

Percentage of Obesity for Both Sexes (GBD in COVID19 spreadsheet)

9.0.25.1 Distribution

Distribution of values for obesity_both_percent

Distribution of values for obesity_both_percent

0 missing values.

9.0.25.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
obesity_both_percent Percentage of Obesity for Both Sexes (GBD in COVID19 spreadsheet) numeric 0 1 0 18 38 15.32468 10.72888 <U+2587><U+2583><U+2586><U+2585><U+2582>

9.0.26 owid_gbd_year

Year of the available Data of Global Burden of Disease (GBD in OWID)

9.0.26.1 Distribution

Distribution of values for owid_gbd_year

Distribution of values for owid_gbd_year

0 missing values.

9.0.26.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
owid_gbd_year Year of the available Data of Global Burden of Disease (GBD in OWID) numeric 0 1 2007 2007 2007 2007 0 <U+2581><U+2581><U+2587><U+2581><U+2581>

9.0.27 low_resp_inf_dths

Deaths due to Lower Respiratory Infections (GBD in OWID)

9.0.27.1 Distribution

Distribution of values for low_resp_inf_dths

Distribution of values for low_resp_inf_dths

0 missing values.

9.0.27.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
low_resp_inf_dths Deaths due to Lower Respiratory Infections (GBD in OWID) numeric 0 1 40 4214 578128 16835.61 53112.67 <U+2587><U+2581><U+2581><U+2581><U+2581>

9.0.28 respiratory_diseases_deaths

Deaths due to Respiratory Diseases (GBD in OWID)

9.0.28.1 Distribution

Distribution of values for respiratory_diseases_deaths

Distribution of values for respiratory_diseases_deaths

0 missing values.

9.0.28.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
respiratory_diseases_deaths Deaths due to Respiratory Diseases (GBD in OWID) numeric 0 1 25 2486 1e+06 21366.73 112071.2 <U+2587><U+2581><U+2581><U+2581><U+2581>

9.0.29 diabetes_deaths

Deaths due to Diabetes (GBD in OWID)

9.0.29.1 Distribution

Distribution of values for diabetes_deaths

Distribution of values for diabetes_deaths

0 missing values.

9.0.29.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
diabetes_deaths Deaths due to Diabetes (GBD in OWID) numeric 0 1 14 1585 165465 6375.889 18073.94 <U+2587><U+2581><U+2581><U+2581><U+2581>

9.0.30 life_exp_15_20

Expected Life Expectancy at Age 60 (WHO)

9.0.30.1 Distribution

Distribution of values for life_exp_15_20

Distribution of values for life_exp_15_20

0 missing values.

9.0.30.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
life_exp_15_20 Expected Life Expectancy at Age 60 (WHO) numeric 0 1 14 20 27 20.02324 3.206704 <U+2585><U+2587><U+2587><U+2586><U+2585>

9.0.31 month_temp_16_m

Avg. Yearly Temperature (celsius) in 2016 (CCKP)

9.0.31.1 Distribution

Distribution of values for month_temp_16_m

Distribution of values for month_temp_16_m

0 missing values.

9.0.31.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
month_temp_16_m Avg. Yearly Temperature (celsius) in 2016 (CCKP) numeric 0 1 -1.6 23 31 20.42067 7.485308 <U+2581><U+2582><U+2585><U+2583><U+2587>

9.0.32 month_rainfall_mm_16_m

Avg. Yearly Rain (Millimiters) in 2016 (CCKP)

9.0.32.1 Distribution

Distribution of values for month_rainfall_mm_16_m

Distribution of values for month_rainfall_mm_16_m

0 missing values.

9.0.32.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
month_rainfall_mm_16_m Avg. Yearly Rain (Millimiters) in 2016 (CCKP) numeric 0 1 1.1 82 289 96.28194 68.88361 <U+2587><U+2586><U+2585><U+2582><U+2581>

9.0.33 month_temp_07_m

Avg. Yearly Temperature (celsius) in 2007 (CCKP)

9.0.33.1 Distribution

Distribution of values for month_temp_07_m

Distribution of values for month_temp_07_m

0 missing values.

9.0.33.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
month_temp_07_m Avg. Yearly Temperature (celsius) in 2007 (CCKP) numeric 0 1 -2.6 22 31 20.06585 7.402026 <U+2581><U+2582><U+2585><U+2583><U+2587>

9.0.34 month_rainfall_mm_07_m

Avg. Yearly Rain (Millimiters) in 2007 (CCKP)

9.0.34.1 Distribution

Distribution of values for month_rainfall_mm_07_m

Distribution of values for month_rainfall_mm_07_m

0 missing values.

9.0.34.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
month_rainfall_mm_07_m Avg. Yearly Rain (Millimiters) in 2007 (CCKP) numeric 0 1 2 76 329 102.1499 79.25645 <U+2587><U+2585><U+2583><U+2582><U+2581>

9.0.35 jan

Avg. Monthly Temperature (celsius) in 2016, January

9.0.35.1 Distribution

Distribution of values for jan

Distribution of values for jan

0 missing values.

9.0.35.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
jan Avg. Monthly Temperature (celsius) in 2016, January numeric 0 1 -24 20 29 14.11941 13.18123 <U+2581><U+2581><U+2583><U+2582><U+2587>

9.0.36 feb

Avg. Monthly Temperature (celsius) in 2016, February

9.0.36.1 Distribution

Distribution of values for feb

Distribution of values for feb

0 missing values.

9.0.36.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
feb Avg. Monthly Temperature (celsius) in 2016, February numeric 0 1 -20 21 30 15.9944 11.67541 <U+2581><U+2581><U+2583><U+2582><U+2587>

9.0.37 mar

Avg. Monthly Temperature (celsius) in 2016, March

9.0.37.1 Distribution

Distribution of values for mar

Distribution of values for mar

0 missing values.

9.0.37.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
mar Avg. Monthly Temperature (celsius) in 2016, March numeric 0 1 -15 23 32 17.62142 10.82266 <U+2581><U+2582><U+2583><U+2582><U+2587>

9.0.38 apr

Avg. Monthly Temperature (celsius) in 2016, April

9.0.38.1 Distribution

Distribution of values for apr

Distribution of values for apr

0 missing values.

9.0.38.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
apr Avg. Monthly Temperature (celsius) in 2016, April numeric 0 1 -9.3 23 34 19.80383 9.051145 <U+2581><U+2582><U+2585><U+2585><U+2587>

9.0.39 may

Avg. Monthly Temperature (celsius) in 2016, May

9.0.39.1 Distribution

Distribution of values for may

Distribution of values for may

0 missing values.

9.0.39.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
may Avg. Monthly Temperature (celsius) in 2016, May numeric 0 1 2.1 23 35 21.36651 7.493428 <U+2581><U+2586><U+2585><U+2587><U+2583>

9.0.40 jun

9.0.40.1 Distribution

Distribution of values for jun

Distribution of values for jun

0 missing values.

9.0.40.2 Summary statistics

name data_type n_missing complete_rate min median max mean sd hist label
jun numeric 0 1 4.7 24 37 22.62821 6.539552 <U+2581><U+2583><U+2586><U+2587><U+2582> NA

9.0.41 jul

Avg. Monthly Temperature (celsius) in 2016, July

9.0.41.1 Distribution

Distribution of values for jul

Distribution of values for jul

0 missing values.

9.0.41.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
jul Avg. Monthly Temperature (celsius) in 2016, July numeric 0 1 4.6 24 39 23.27333 6.093955 <U+2581><U+2583><U+2587><U+2587><U+2581>

9.0.42 aug

Avg. Monthly Temperature (celsius) in 2016, August

9.0.42.1 Distribution

Distribution of values for aug

Distribution of values for aug

0 missing values.

9.0.42.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
aug Avg. Monthly Temperature (celsius) in 2016, August numeric 0 1 5.3 25 38 23.26557 5.943631 <U+2581><U+2583><U+2587><U+2587><U+2581>

9.0.43 sep

Avg. Monthly Temperature (celsius) in 2016, September

9.0.43.1 Distribution

Distribution of values for sep

Distribution of values for sep

0 missing values.

9.0.43.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
sep Avg. Monthly Temperature (celsius) in 2016, September numeric 0 1 5.1 24 35 22.14631 6.170813 <U+2581><U+2583><U+2585><U+2587><U+2582>

9.0.44 oct

Avg. Monthly Temperature (celsius) in 2016, October

9.0.44.1 Distribution

Distribution of values for oct

Distribution of values for oct

0 missing values.

9.0.44.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
oct Avg. Monthly Temperature (celsius) in 2016, October numeric 0 1 -4.6 24 31 19.54057 8.798677 <U+2581><U+2582><U+2582><U+2582><U+2587>

9.0.45 nov

Avg. Monthly Temperature (celsius) in 2016, November

9.0.45.1 Distribution

Distribution of values for nov

Distribution of values for nov

0 missing values.

9.0.45.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
nov Avg. Monthly Temperature (celsius) in 2016, November numeric 0 1 -18 22 29 16.71561 10.82382 <U+2581><U+2581><U+2583><U+2582><U+2587>

9.0.46 dec

Avg. Monthly Temperature (celsius) in 2016, December

9.0.46.1 Distribution

Distribution of values for dec

Distribution of values for dec

0 missing values.

9.0.46.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
dec Avg. Monthly Temperature (celsius) in 2016, December numeric 0 1 -23 21 28 14.92051 12.21755 <U+2581><U+2581><U+2583><U+2582><U+2587>

9.0.47 rate_lo_resp_inf_dth

Deaths due to Lower Respiratory Infections per 100M (GBD in OWID)

9.0.47.1 Distribution

Distribution of values for rate_lo_resp_inf_dth

Distribution of values for rate_lo_resp_inf_dth

0 missing values.

9.0.47.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
rate_lo_resp_inf_dth Deaths due to Lower Respiratory Infections per 100M (GBD in OWID) numeric 0 1 4e-04 0.042 5.8 0.1683561 0.5311267 <U+2587><U+2581><U+2581><U+2581><U+2581>

9.0.48 prop_lo_resp_inf_dth

Prop. of Deaths due to Lower Respiratory Infections of the Total Pop (GBD in OWID)

9.0.48.1 Distribution

Distribution of values for prop_lo_resp_inf_dth

Distribution of values for prop_lo_resp_inf_dth

0 missing values.

9.0.48.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
prop_lo_resp_inf_dth Prop. of Deaths due to Lower Respiratory Infections of the Total Pop (GBD in OWID) numeric 0 1 1.4e-05 3e-04 0.0012 0.0003685 0.000248 <U+2587><U+2586><U+2585><U+2581><U+2581>

9.0.49 dates_1

Date (Date format) at 0 day(s) since first case (JHU)

9.0.49.1 Distribution

## 54  unique, categorical values, so not shown.

0 missing values.

9.0.49.2 Summary statistics

name label data_type n_missing complete_rate n_unique min median max
dates_1 Date (Date format) at 0 day(s) since first case (JHU) Date 0 1 54 2019-12-01 2020-03-06 2020-10-12

9.0.50 dates_30

Date (Date format) at 30 day(s) since first case (JHU)

9.0.50.1 Distribution

## 54  unique, categorical values, so not shown.

0 missing values.

9.0.50.2 Summary statistics

name label data_type n_missing complete_rate n_unique median max
dates_30 Date (Date format) at 30 day(s) since first case (JHU) Date 0 1 54 2020-04-03 2020-06-11

9.0.51 dates_60

Date (Date format) at 60 day(s) since first case (JHU)

9.0.51.1 Distribution

## 54  unique, categorical values, so not shown.

0 missing values.

9.0.51.2 Summary statistics

name label data_type n_missing complete_rate n_unique median max
dates_60 Date (Date format) at 60 day(s) since first case (JHU) Date 0 1 54 2020-05-03 2020-07-11

9.0.52 dates_90

Date (Date format) at 90 day(s) since first case (JHU)

9.0.52.1 Distribution

## 54  unique, categorical values, so not shown.

0 missing values.

9.0.52.2 Summary statistics

name label data_type n_missing complete_rate n_unique median max
dates_90 Date (Date format) at 90 day(s) since first case (JHU) Date 0 1 54 2020-06-02 2020-08-10

9.0.53 dates_120

Date (Date format) at 120 day(s) since first case (JHU)

9.0.53.1 Distribution

## 54  unique, categorical values, so not shown.

0 missing values.

9.0.53.2 Summary statistics

name label data_type n_missing complete_rate n_unique median max
dates_120 Date (Date format) at 120 day(s) since first case (JHU) Date 0 1 54 2020-07-02 2020-09-09

9.0.54 date_month_1

3-char Month of Date (Character) at 0 day(s) since first case (JHU)

9.0.54.1 Distribution

Distribution of values for date_month_1

Distribution of values for date_month_1

0 missing values.

9.0.54.2 Summary statistics

name label data_type n_missing complete_rate n_unique empty min max whitespace
date_month_1 3-char Month of Date (Character) at 0 day(s) since first case (JHU) character 0 1 7 0 3 3 0

9.0.55 date_month_30

3-char Month of Date (Character) at 30 day(s) since first case (JHU)

9.0.55.1 Distribution

Distribution of values for date_month_30

Distribution of values for date_month_30

1 missing values.

9.0.55.2 Summary statistics

name label data_type n_missing complete_rate n_unique empty min max whitespace
date_month_30 3-char Month of Date (Character) at 30 day(s) since first case (JHU) character 1 0.9935065 6 0 3 3 0

9.0.56 date_month_60

3-char Month of Date (Character) at 60 day(s) since first case (JHU)

9.0.56.1 Distribution

Distribution of values for date_month_60

Distribution of values for date_month_60

1 missing values.

9.0.56.2 Summary statistics

name label data_type n_missing complete_rate n_unique empty min max whitespace
date_month_60 3-char Month of Date (Character) at 60 day(s) since first case (JHU) character 1 0.9935065 6 0 3 3 0

9.0.57 date_month_90

3-char Month of Date (Character) at 90 day(s) since first case (JHU)

9.0.57.1 Distribution

Distribution of values for date_month_90

Distribution of values for date_month_90

1 missing values.

9.0.57.2 Summary statistics

name label data_type n_missing complete_rate n_unique empty min max whitespace
date_month_90 3-char Month of Date (Character) at 90 day(s) since first case (JHU) character 1 0.9935065 6 0 3 3 0

9.0.58 date_month_120

3-char Month of Date (Character) at 120 day(s) since first case (JHU)

9.0.58.1 Distribution

Distribution of values for date_month_120

Distribution of values for date_month_120

1 missing values.

9.0.58.2 Summary statistics

name label data_type n_missing complete_rate n_unique empty min max whitespace
date_month_120 3-char Month of Date (Character) at 120 day(s) since first case (JHU) character 1 0.9935065 6 0 3 3 0

9.0.59 cases_1

No. of Confirmed Deaths at 0 day(s) since first case (JHU)

9.0.59.1 Distribution

Distribution of values for cases_1

Distribution of values for cases_1

0 missing values.

9.0.59.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
cases_1 No. of Confirmed Deaths at 0 day(s) since first case (JHU) numeric 0 1 1 1 15 1.597403 1.470936 <U+2587><U+2581><U+2581><U+2581><U+2581>

9.0.60 cases_30

No. of Confirmed Deaths at 30 day(s) since first case (JHU)

9.0.60.1 Distribution

Distribution of values for cases_30

Distribution of values for cases_30

0 missing values.

9.0.60.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
cases_30 No. of Confirmed Deaths at 30 day(s) since first case (JHU) numeric 0 1 -Inf 150 42282 -Inf <U+2587><U+2581><U+2581><U+2581><U+2581>

9.0.61 cases_60

No. of Confirmed Deaths at 60 day(s) since first case (JHU)

9.0.61.1 Distribution

Distribution of values for cases_60

Distribution of values for cases_60

0 missing values.

9.0.61.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
cases_60 No. of Confirmed Deaths at 60 day(s) since first case (JHU) numeric 0 1 -Inf 1334 137115 -Inf <U+2587><U+2581><U+2581><U+2581><U+2581>

9.0.62 cases_90

No. of Confirmed Deaths at 90 day(s) since first case (JHU)

9.0.62.1 Distribution

Distribution of values for cases_90

Distribution of values for cases_90

0 missing values.

9.0.62.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
cases_90 No. of Confirmed Deaths at 90 day(s) since first case (JHU) numeric 0 1 -Inf 3708 790264 -Inf <U+2587><U+2581><U+2581><U+2581><U+2581>

9.0.63 cases_120

No. of Confirmed Deaths at 120 day(s) since first case (JHU)

9.0.63.1 Distribution

Distribution of values for cases_120

Distribution of values for cases_120

0 missing values.

9.0.63.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
cases_120 No. of Confirmed Deaths at 120 day(s) since first case (JHU) numeric 0 1 -Inf 6695 1559501 -Inf <U+2587><U+2581><U+2581><U+2581><U+2581>

9.0.64 cases_deaths_1

No. of Confirmed Deaths at 0 day(s) since first case (JHU)

9.0.64.1 Distribution

Distribution of values for cases_deaths_1

Distribution of values for cases_deaths_1

0 missing values.

9.0.64.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
cases_deaths_1 No. of Confirmed Deaths at 0 day(s) since first case (JHU) numeric 0 1 0 0 2 0.0194805 0.1797158 <U+2587><U+2581><U+2581><U+2581><U+2581>

9.0.65 cases_deaths_30

No. of Confirmed Deaths at 30 day(s) since first case (JHU)

9.0.65.1 Distribution

Distribution of values for cases_deaths_30

Distribution of values for cases_deaths_30

0 missing values.

9.0.65.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
cases_deaths_30 No. of Confirmed Deaths at 30 day(s) since first case (JHU) numeric 0 1 -Inf 3 1284 -Inf <U+2587><U+2581><U+2581><U+2581><U+2581>

9.0.66 cases_deaths_60

No. of Confirmed Deaths at 60 day(s) since first case (JHU)

9.0.66.1 Distribution

Distribution of values for cases_deaths_60

Distribution of values for cases_deaths_60

0 missing values.

9.0.66.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
cases_deaths_60 No. of Confirmed Deaths at 60 day(s) since first case (JHU) numeric 0 1 -Inf 24 11591 -Inf <U+2587><U+2581><U+2581><U+2581><U+2581>

9.0.67 cases_deaths_90

No. of Confirmed Deaths at 90 day(s) since first case (JHU)

9.0.67.1 Distribution

Distribution of values for cases_deaths_90

Distribution of values for cases_deaths_90

0 missing values.

9.0.67.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
cases_deaths_90 No. of Confirmed Deaths at 90 day(s) since first case (JHU) numeric 0 1 -Inf 66 44647 -Inf <U+2587><U+2581><U+2581><U+2581><U+2581>

9.0.68 cases_deaths_120

No. of Confirmed Deaths at 120 day(s) since first case (JHU)

9.0.68.1 Distribution

Distribution of values for cases_deaths_120

Distribution of values for cases_deaths_120

0 missing values.

9.0.68.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
cases_deaths_120 No. of Confirmed Deaths at 120 day(s) since first case (JHU) numeric 0 1 -Inf 110 96715 -Inf <U+2587><U+2581><U+2581><U+2581><U+2581>

9.0.69 ndays_zero_1

No. of Days since the first case worldwide at 0 day(s) since first case

9.0.69.1 Distribution

Distribution of values for ndays_zero_1

Distribution of values for ndays_zero_1

0 missing values.

9.0.69.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
ndays_zero_1 No. of Days since the first case worldwide at 0 day(s) since first case numeric 0 1 1 97 317 95.48052 27.15827 <U+2582><U+2587><U+2581><U+2581><U+2581>

9.0.70 ndays_zero_30

No. of Days since the first case worldwide at 30 day(s) since first case

9.0.70.1 Distribution

Distribution of values for ndays_zero_30

Distribution of values for ndays_zero_30

0 missing values.

9.0.70.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
ndays_zero_30 No. of Days since the first case worldwide at 30 day(s) since first case numeric 0 1 -Inf 126 1642 -Inf <U+2587><U+2581><U+2581><U+2581><U+2581>

9.0.71 ndays_zero_60

No. of Days since the first case worldwide at 60 day(s) since first case

9.0.71.1 Distribution

Distribution of values for ndays_zero_60

Distribution of values for ndays_zero_60

0 missing values.

9.0.71.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
ndays_zero_60 No. of Days since the first case worldwide at 60 day(s) since first case numeric 0 1 -Inf 156 3232 -Inf <U+2587><U+2581><U+2581><U+2581><U+2581>

9.0.72 ndays_zero_90

No. of Days since the first case worldwide at 90 day(s) since first case

9.0.72.1 Distribution

Distribution of values for ndays_zero_90

Distribution of values for ndays_zero_90

0 missing values.

9.0.72.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
ndays_zero_90 No. of Days since the first case worldwide at 90 day(s) since first case numeric 0 1 -Inf 186 4822 -Inf <U+2587><U+2581><U+2581><U+2581><U+2581>

9.0.73 ndays_zero_120

No. of Days since the first case worldwide at 120 day(s) since first case

9.0.73.1 Distribution

Distribution of values for ndays_zero_120

Distribution of values for ndays_zero_120

0 missing values.

9.0.73.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
ndays_zero_120 No. of Days since the first case worldwide at 120 day(s) since first case numeric 0 1 -Inf 216 6412 -Inf <U+2587><U+2581><U+2581><U+2581><U+2581>

9.0.74 stringency_ind_oxf_1

Government Response Stringency Index at 0 day(s) since first case (OXF)

9.0.74.1 Distribution

Distribution of values for stringency_ind_oxf_1

Distribution of values for stringency_ind_oxf_1

0 missing values.

9.0.74.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
stringency_ind_oxf_1 Government Response Stringency Index at 0 day(s) since first case (OXF) numeric 0 1 -Inf 11 91 -Inf <U+2587><U+2583><U+2581><U+2581><U+2581>

9.0.75 stringency_ind_oxf_30

Government Response Stringency Index at 30 day(s) since first case (OXF)

9.0.75.1 Distribution

Distribution of values for stringency_ind_oxf_30

Distribution of values for stringency_ind_oxf_30

0 missing values.

9.0.75.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
stringency_ind_oxf_30 Government Response Stringency Index at 30 day(s) since first case (OXF) numeric 0 1 -Inf 80 100 -Inf <U+2582><U+2581><U+2581><U+2585><U+2587>

9.0.76 stringency_ind_oxf_60

Government Response Stringency Index at 60 day(s) since first case (OXF)

9.0.76.1 Distribution

Distribution of values for stringency_ind_oxf_60

Distribution of values for stringency_ind_oxf_60

0 missing values.

9.0.76.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
stringency_ind_oxf_60 Government Response Stringency Index at 60 day(s) since first case (OXF) numeric 0 1 -Inf 80 100 -Inf <U+2581><U+2581><U+2582><U+2586><U+2587>

9.0.77 stringency_ind_oxf_90

Government Response Stringency Index at 90 day(s) since first case (OXF)

9.0.77.1 Distribution

Distribution of values for stringency_ind_oxf_90

Distribution of values for stringency_ind_oxf_90

0 missing values.

9.0.77.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
stringency_ind_oxf_90 Government Response Stringency Index at 90 day(s) since first case (OXF) numeric 0 1 -Inf 75 100 -Inf <U+2581><U+2582><U+2583><U+2587><U+2585>

9.0.78 stringency_ind_oxf_120

Government Response Stringency Index at 120 day(s) since first case (OXF)

9.0.78.1 Distribution

Distribution of values for stringency_ind_oxf_120

Distribution of values for stringency_ind_oxf_120

0 missing values.

9.0.78.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
stringency_ind_oxf_120 Government Response Stringency Index at 120 day(s) since first case (OXF) numeric 0 1 -Inf 66 96 -Inf <U+2582><U+2583><U+2585><U+2587><U+2583>

9.0.79 monthly_temp_1

Monthly avg. temperature (celsius) for all 12m from 1901 to 2009 at 0 day(s) since first case (rWBclimate)

9.0.79.1 Distribution

Distribution of values for monthly_temp_1

Distribution of values for monthly_temp_1

0 missing values.

9.0.79.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
monthly_temp_1 Monthly avg. temperature (celsius) for all 12m from 1901 to 2009 at 0 day(s) since first case (rWBclimate) numeric 0 1 -26 21 31 15.03168 12.31393 <U+2581><U+2581><U+2583><U+2582><U+2587>

9.0.80 monthly_temp_30

Monthly avg. temperature (celsius) for all 12m from 1901 to 2009 at 30 day(s) since first case (rWBclimate)

9.0.80.1 Distribution

Distribution of values for monthly_temp_30

Distribution of values for monthly_temp_30

0 missing values.

9.0.80.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
monthly_temp_30 Monthly avg. temperature (celsius) for all 12m from 1901 to 2009 at 30 day(s) since first case (rWBclimate) numeric 0 1 -Inf 20 32 -Inf <U+2581><U+2581><U+2583><U+2583><U+2587>

9.0.81 monthly_temp_60

Monthly avg. temperature (celsius) for all 12m from 1901 to 2009 at 60 day(s) since first case (rWBclimate)

9.0.81.1 Distribution

Distribution of values for monthly_temp_60

Distribution of values for monthly_temp_60

0 missing values.

9.0.81.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
monthly_temp_60 Monthly avg. temperature (celsius) for all 12m from 1901 to 2009 at 60 day(s) since first case (rWBclimate) numeric 0 1 -Inf 22 33 -Inf <U+2581><U+2581><U+2583><U+2586><U+2587>

9.0.82 monthly_temp_90

Monthly avg. temperature (celsius) for all 12m from 1901 to 2009 at 90 day(s) since first case (rWBclimate)

9.0.82.1 Distribution

Distribution of values for monthly_temp_90

Distribution of values for monthly_temp_90

0 missing values.

9.0.82.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
monthly_temp_90 Monthly avg. temperature (celsius) for all 12m from 1901 to 2009 at 90 day(s) since first case (rWBclimate) numeric 0 1 -Inf 22 33 -Inf <U+2581><U+2581><U+2585><U+2586><U+2587>

9.0.83 monthly_temp_120

Monthly avg. temperature (celsius) for all 12m from 1901 to 2009 at 120 day(s) since first case (rWBclimate)

9.0.83.1 Distribution

Distribution of values for monthly_temp_120

Distribution of values for monthly_temp_120

0 missing values.

9.0.83.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
monthly_temp_120 Monthly avg. temperature (celsius) for all 12m from 1901 to 2009 at 120 day(s) since first case (rWBclimate) numeric 0 1 -Inf 23 35 -Inf <U+2581><U+2582><U+2586><U+2587><U+2583>

9.0.84 monthly_prec_1

Monthly avg. precipitation (mm) for all 12m from 1901 to 2009 at 0 day(s) since first case (rWBclimate)

9.0.84.1 Distribution

Distribution of values for monthly_prec_1

Distribution of values for monthly_prec_1

0 missing values.

9.0.84.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
monthly_prec_1 Monthly avg. precipitation (mm) for all 12m from 1901 to 2009 at 0 day(s) since first case (rWBclimate) numeric 0 1 0.14 52 415 74.50949 72.96024 <U+2587><U+2582><U+2581><U+2581><U+2581>

9.0.85 monthly_prec_30

Monthly avg. precipitation (mm) for all 12m from 1901 to 2009 at 30 day(s) since first case (rWBclimate)

9.0.85.1 Distribution

Distribution of values for monthly_prec_30

Distribution of values for monthly_prec_30

0 missing values.

9.0.85.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
monthly_prec_30 Monthly avg. precipitation (mm) for all 12m from 1901 to 2009 at 30 day(s) since first case (rWBclimate) numeric 0 1 -Inf 53 296 -Inf <U+2587><U+2583><U+2582><U+2581><U+2581>

9.0.86 monthly_prec_60

Monthly avg. precipitation (mm) for all 12m from 1901 to 2009 at 60 day(s) since first case (rWBclimate)

9.0.86.1 Distribution

Distribution of values for monthly_prec_60

Distribution of values for monthly_prec_60

0 missing values.

9.0.86.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
monthly_prec_60 Monthly avg. precipitation (mm) for all 12m from 1901 to 2009 at 60 day(s) since first case (rWBclimate) numeric 0 1 -Inf 58 376 -Inf <U+2587><U+2582><U+2582><U+2581><U+2581>

9.0.87 monthly_prec_90

Monthly avg. precipitation (mm) for all 12m from 1901 to 2009 at 90 day(s) since first case (rWBclimate)

9.0.87.1 Distribution

Distribution of values for monthly_prec_90

Distribution of values for monthly_prec_90

0 missing values.

9.0.87.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
monthly_prec_90 Monthly avg. precipitation (mm) for all 12m from 1901 to 2009 at 90 day(s) since first case (rWBclimate) numeric 0 1 -Inf 59 510 -Inf <U+2587><U+2582><U+2581><U+2581><U+2581>

9.0.88 monthly_prec_120

Monthly avg. precipitation (mm) for all 12m from 1901 to 2009 at 120 day(s) since first case (rWBclimate)

9.0.88.1 Distribution

Distribution of values for monthly_prec_120

Distribution of values for monthly_prec_120

0 missing values.

9.0.88.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
monthly_prec_120 Monthly avg. precipitation (mm) for all 12m from 1901 to 2009 at 120 day(s) since first case (rWBclimate) numeric 0 1 -Inf 68 537 -Inf <U+2587><U+2582><U+2581><U+2581><U+2581>

9.0.89 month_temp_07_1

Avg. Monthly Temperature (celsius) in 2007 at 0 day(s) since first case (CCKP)

9.0.89.1 Distribution

Distribution of values for month_temp_07_1

Distribution of values for month_temp_07_1

0 missing values.

9.0.89.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_temp_07_1 Avg. Monthly Temperature (celsius) in 2007 at 0 day(s) since first case (CCKP) numeric 0 1 -Inf 21 31 -Inf <U+2581><U+2581><U+2583><U+2582><U+2587>

9.0.90 month_temp_07_30

Avg. Monthly Temperature (celsius) in 2007 at 30 day(s) since first case (CCKP)

9.0.90.1 Distribution

Distribution of values for month_temp_07_30

Distribution of values for month_temp_07_30

0 missing values.

9.0.90.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_temp_07_30 Avg. Monthly Temperature (celsius) in 2007 at 30 day(s) since first case (CCKP) numeric 0 1 -Inf 21 33 -Inf <U+2581><U+2581><U+2583><U+2583><U+2587>

9.0.91 month_temp_07_60

Avg. Monthly Temperature (celsius) in 2007 at 60 day(s) since first case (CCKP)

9.0.91.1 Distribution

Distribution of values for month_temp_07_60

Distribution of values for month_temp_07_60

0 missing values.

9.0.91.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_temp_07_60 Avg. Monthly Temperature (celsius) in 2007 at 60 day(s) since first case (CCKP) numeric 0 1 -Inf 22 34 -Inf <U+2581><U+2581><U+2583><U+2585><U+2587>

9.0.92 month_temp_07_90

Avg. Monthly Temperature (celsius) in 2007 at 90 day(s) since first case (CCKP)

9.0.92.1 Distribution

Distribution of values for month_temp_07_90

Distribution of values for month_temp_07_90

0 missing values.

9.0.92.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_temp_07_90 Avg. Monthly Temperature (celsius) in 2007 at 90 day(s) since first case (CCKP) numeric 0 1 -Inf 23 35 -Inf <U+2581><U+2581><U+2585><U+2587><U+2586>

9.0.93 month_temp_07_120

Avg. Monthly Temperature (celsius) in 2007 at 120 day(s) since first case (CCKP)

9.0.93.1 Distribution

Distribution of values for month_temp_07_120

Distribution of values for month_temp_07_120

0 missing values.

9.0.93.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_temp_07_120 Avg. Monthly Temperature (celsius) in 2007 at 120 day(s) since first case (CCKP) numeric 0 1 -Inf 24 36 -Inf <U+2581><U+2581><U+2585><U+2587><U+2582>

9.0.94 month_rainfall_mm_07_1

Avg. Monthly Rain (Millimiters) in 2007 at 0 day(s) since first case (CCKP)

9.0.94.1 Distribution

Distribution of values for month_rainfall_mm_07_1

Distribution of values for month_rainfall_mm_07_1

0 missing values.

9.0.94.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_rainfall_mm_07_1 Avg. Monthly Rain (Millimiters) in 2007 at 0 day(s) since first case (CCKP) numeric 0 1 -Inf 54 886 -Inf <U+2587><U+2581><U+2581><U+2581><U+2581>

9.0.95 month_rainfall_mm_07_30

Avg. Monthly Rain (Millimiters) in 2007 at 30 day(s) since first case (CCKP)

9.0.95.1 Distribution

Distribution of values for month_rainfall_mm_07_30

Distribution of values for month_rainfall_mm_07_30

0 missing values.

9.0.95.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_rainfall_mm_07_30 Avg. Monthly Rain (Millimiters) in 2007 at 30 day(s) since first case (CCKP) numeric 0 1 -Inf 57 379 -Inf <U+2587><U+2583><U+2581><U+2581><U+2581>

9.0.96 month_rainfall_mm_07_60

Avg. Monthly Rain (Millimiters) in 2007 at 60 day(s) since first case (CCKP)

9.0.96.1 Distribution

Distribution of values for month_rainfall_mm_07_60

Distribution of values for month_rainfall_mm_07_60

0 missing values.

9.0.96.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_rainfall_mm_07_60 Avg. Monthly Rain (Millimiters) in 2007 at 60 day(s) since first case (CCKP) numeric 0 1 -Inf 52 533 -Inf <U+2587><U+2582><U+2581><U+2581><U+2581>

9.0.97 month_rainfall_mm_07_90

Avg. Monthly Rain (Millimiters) in 2007 at 90 day(s) since first case (CCKP)

9.0.97.1 Distribution

Distribution of values for month_rainfall_mm_07_90

Distribution of values for month_rainfall_mm_07_90

0 missing values.

9.0.97.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_rainfall_mm_07_90 Avg. Monthly Rain (Millimiters) in 2007 at 90 day(s) since first case (CCKP) numeric 0 1 -Inf 59 482 -Inf <U+2587><U+2582><U+2581><U+2581><U+2581>

9.0.98 month_rainfall_mm_07_120

Avg. Monthly Rain (Millimiters) in 2007 at 120 day(s) since first case (CCKP)

9.0.98.1 Distribution

Distribution of values for month_rainfall_mm_07_120

Distribution of values for month_rainfall_mm_07_120

0 missing values.

9.0.98.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_rainfall_mm_07_120 Avg. Monthly Rain (Millimiters) in 2007 at 120 day(s) since first case (CCKP) numeric 0 1 -Inf 64 514 -Inf <U+2587><U+2583><U+2582><U+2581><U+2581>

9.0.99 month_temp_16_1

Avg. Monthly Temperature (celsius) in 2016 at 0 day(s) since first case (CCKP)

9.0.99.1 Distribution

Distribution of values for month_temp_16_1

Distribution of values for month_temp_16_1

0 missing values.

9.0.99.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
month_temp_16_1 Avg. Monthly Temperature (celsius) in 2016 at 0 day(s) since first case (CCKP) numeric 0 1 -24 21 32 16.58283 11.72071 <U+2581><U+2581><U+2583><U+2583><U+2587>

9.0.100 month_temp_16_30

Avg. Monthly Temperature (celsius) in 2016 at 30 day(s) since first case (CCKP)

9.0.100.1 Distribution

Distribution of values for month_temp_16_30

Distribution of values for month_temp_16_30

0 missing values.

9.0.100.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_temp_16_30 Avg. Monthly Temperature (celsius) in 2016 at 30 day(s) since first case (CCKP) numeric 0 1 -Inf 21 34 -Inf <U+2581><U+2581><U+2585><U+2585><U+2587>

9.0.101 month_temp_16_60

Avg. Monthly Temperature (celsius) in 2016 at 60 day(s) since first case (CCKP)

9.0.101.1 Distribution

Distribution of values for month_temp_16_60

Distribution of values for month_temp_16_60

0 missing values.

9.0.101.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_temp_16_60 Avg. Monthly Temperature (celsius) in 2016 at 60 day(s) since first case (CCKP) numeric 0 1 -Inf 22 35 -Inf <U+2581><U+2581><U+2585><U+2586><U+2587>

9.0.102 month_temp_16_90

Avg. Monthly Temperature (celsius) in 2016 at 90 day(s) since first case (CCKP)

9.0.102.1 Distribution

Distribution of values for month_temp_16_90

Distribution of values for month_temp_16_90

0 missing values.

9.0.102.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_temp_16_90 Avg. Monthly Temperature (celsius) in 2016 at 90 day(s) since first case (CCKP) numeric 0 1 -Inf 23 34 -Inf <U+2581><U+2581><U+2586><U+2587><U+2587>

9.0.103 month_temp_16_120

Avg. Monthly Temperature (celsius) in 2016 at 120 day(s) since first case (CCKP)

9.0.103.1 Distribution

Distribution of values for month_temp_16_120

Distribution of values for month_temp_16_120

0 missing values.

9.0.103.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_temp_16_120 Avg. Monthly Temperature (celsius) in 2016 at 120 day(s) since first case (CCKP) numeric 0 1 -Inf 24 37 -Inf <U+2581><U+2582><U+2585><U+2587><U+2582>

9.0.104 month_rainfall_mm_16_1

Avg. Monthly Rain (Millimiters) in 2016 at 0 day(s) since first case (CCKP)

9.0.104.1 Distribution

Distribution of values for month_rainfall_mm_16_1

Distribution of values for month_rainfall_mm_16_1

0 missing values.

9.0.104.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
month_rainfall_mm_16_1 Avg. Monthly Rain (Millimiters) in 2016 at 0 day(s) since first case (CCKP) numeric 0 1 0 59 421 78.10461 75.53563 <U+2587><U+2582><U+2581><U+2581><U+2581>

9.0.105 month_rainfall_mm_16_30

Avg. Monthly Rain (Millimiters) in 2016 at 30 day(s) since first case (CCKP)

9.0.105.1 Distribution

Distribution of values for month_rainfall_mm_16_30

Distribution of values for month_rainfall_mm_16_30

0 missing values.

9.0.105.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_rainfall_mm_16_30 Avg. Monthly Rain (Millimiters) in 2016 at 30 day(s) since first case (CCKP) numeric 0 1 -Inf 60 948 -Inf <U+2587><U+2581><U+2581><U+2581><U+2581>

9.0.106 month_rainfall_mm_16_60

Avg. Monthly Rain (Millimiters) in 2016 at 60 day(s) since first case (CCKP)

9.0.106.1 Distribution

Distribution of values for month_rainfall_mm_16_60

Distribution of values for month_rainfall_mm_16_60

0 missing values.

9.0.106.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_rainfall_mm_16_60 Avg. Monthly Rain (Millimiters) in 2016 at 60 day(s) since first case (CCKP) numeric 0 1 -Inf 61 428 -Inf <U+2587><U+2582><U+2582><U+2581><U+2581>

9.0.107 month_rainfall_mm_16_90

Avg. Monthly Rain (Millimiters) in 2016 at 90 day(s) since first case (CCKP)

9.0.107.1 Distribution

Distribution of values for month_rainfall_mm_16_90

Distribution of values for month_rainfall_mm_16_90

0 missing values.

9.0.107.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_rainfall_mm_16_90 Avg. Monthly Rain (Millimiters) in 2016 at 90 day(s) since first case (CCKP) numeric 0 1 -Inf 58 475 -Inf <U+2587><U+2582><U+2581><U+2581><U+2581>

9.0.108 month_rainfall_mm_16_120

Avg. Monthly Rain (Millimiters) in 2016 at 120 day(s) since first case (CCKP)

9.0.108.1 Distribution

Distribution of values for month_rainfall_mm_16_120

Distribution of values for month_rainfall_mm_16_120

0 missing values.

9.0.108.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_rainfall_mm_16_120 Avg. Monthly Rain (Millimiters) in 2016 at 120 day(s) since first case (CCKP) numeric 0 1 -Inf 69 591 -Inf <U+2587><U+2583><U+2581><U+2581><U+2581>

9.0.109 month_temp_agg97_06_1

Avg. Decennial Temp (Millimiters) 1997-2006 at at 0 day(s) since first case (CCKP)

9.0.109.1 Distribution

Distribution of values for month_temp_agg97_06_1

Distribution of values for month_temp_agg97_06_1

0 missing values.

9.0.109.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
month_temp_agg97_06_1 Avg. Decennial Temp (Millimiters) 1997-2006 at at 0 day(s) since first case (CCKP) numeric 0 1 -5.7 22 29 18.80643 8.331277 <U+2581><U+2582><U+2583><U+2582><U+2587>

9.0.110 month_temp_agg97_06_30

Avg. Decennial Temp (Millimiters) 1997-2006 at at 30 day(s) since first case (CCKP)

9.0.110.1 Distribution

Distribution of values for month_temp_agg97_06_30

Distribution of values for month_temp_agg97_06_30

0 missing values.

9.0.110.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_temp_agg97_06_30 Avg. Decennial Temp (Millimiters) 1997-2006 at at 30 day(s) since first case (CCKP) numeric 0 1 -Inf 22 29 -Inf <U+2581><U+2582><U+2583><U+2582><U+2587>

9.0.111 month_temp_agg97_06_60

Avg. Decennial Temp (Millimiters) 1997-2006 at at 60 day(s) since first case (CCKP)

9.0.111.1 Distribution

Distribution of values for month_temp_agg97_06_60

Distribution of values for month_temp_agg97_06_60

0 missing values.

9.0.111.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_temp_agg97_06_60 Avg. Decennial Temp (Millimiters) 1997-2006 at at 60 day(s) since first case (CCKP) numeric 0 1 -Inf 22 29 -Inf <U+2581><U+2582><U+2583><U+2582><U+2587>

9.0.112 month_temp_agg97_06_90

Avg. Decennial Temp (Millimiters) 1997-2006 at at 90 day(s) since first case (CCKP)

9.0.112.1 Distribution

Distribution of values for month_temp_agg97_06_90

Distribution of values for month_temp_agg97_06_90

0 missing values.

9.0.112.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_temp_agg97_06_90 Avg. Decennial Temp (Millimiters) 1997-2006 at at 90 day(s) since first case (CCKP) numeric 0 1 -Inf 22 29 -Inf <U+2581><U+2582><U+2583><U+2582><U+2587>

9.0.113 month_temp_agg97_06_120

Avg. Decennial Temp (Millimiters) 1997-2006 at at 120 day(s) since first case (CCKP)

9.0.113.1 Distribution

Distribution of values for month_temp_agg97_06_120

Distribution of values for month_temp_agg97_06_120

0 missing values.

9.0.113.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_temp_agg97_06_120 Avg. Decennial Temp (Millimiters) 1997-2006 at at 120 day(s) since first case (CCKP) numeric 0 1 -Inf 22 29 -Inf <U+2581><U+2582><U+2583><U+2582><U+2587>

9.0.114 month_temp_agg07_16_1

Avg. Decennial Temp (Millimiters) 2007-2016 at at 0 day(s) since first case (CCKP)

9.0.114.1 Distribution

Distribution of values for month_temp_agg07_16_1

Distribution of values for month_temp_agg07_16_1

0 missing values.

9.0.114.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
month_temp_agg07_16_1 Avg. Decennial Temp (Millimiters) 2007-2016 at at 0 day(s) since first case (CCKP) numeric 0 1 -5.8 22 29 18.989 8.26028 <U+2581><U+2582><U+2583><U+2582><U+2587>

9.0.115 month_temp_agg07_16_30

Avg. Decennial Temp (Millimiters) 2007-2016 at at 30 day(s) since first case (CCKP)

9.0.115.1 Distribution

Distribution of values for month_temp_agg07_16_30

Distribution of values for month_temp_agg07_16_30

0 missing values.

9.0.115.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_temp_agg07_16_30 Avg. Decennial Temp (Millimiters) 2007-2016 at at 30 day(s) since first case (CCKP) numeric 0 1 -Inf 22 29 -Inf <U+2581><U+2582><U+2583><U+2582><U+2587>

9.0.116 month_temp_agg07_16_60

Avg. Decennial Temp (Millimiters) 2007-2016 at at 60 day(s) since first case (CCKP)

9.0.116.1 Distribution

Distribution of values for month_temp_agg07_16_60

Distribution of values for month_temp_agg07_16_60

0 missing values.

9.0.116.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_temp_agg07_16_60 Avg. Decennial Temp (Millimiters) 2007-2016 at at 60 day(s) since first case (CCKP) numeric 0 1 -Inf 22 29 -Inf <U+2581><U+2582><U+2583><U+2582><U+2587>

9.0.117 month_temp_agg07_16_90

Avg. Decennial Temp (Millimiters) 2007-2016 at at 90 day(s) since first case (CCKP)

9.0.117.1 Distribution

Distribution of values for month_temp_agg07_16_90

Distribution of values for month_temp_agg07_16_90

0 missing values.

9.0.117.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_temp_agg07_16_90 Avg. Decennial Temp (Millimiters) 2007-2016 at at 90 day(s) since first case (CCKP) numeric 0 1 -Inf 22 29 -Inf <U+2581><U+2582><U+2583><U+2582><U+2587>

9.0.118 month_temp_agg07_16_120

Avg. Decennial Temp (Millimiters) 2007-2016 at at 120 day(s) since first case (CCKP)

9.0.118.1 Distribution

Distribution of values for month_temp_agg07_16_120

Distribution of values for month_temp_agg07_16_120

0 missing values.

9.0.118.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_temp_agg07_16_120 Avg. Decennial Temp (Millimiters) 2007-2016 at at 120 day(s) since first case (CCKP) numeric 0 1 -Inf 22 29 -Inf <U+2581><U+2582><U+2583><U+2582><U+2587>

9.0.119 month_rain_agg97_06_1

Avg. Decennial Rain (Millimiters) 1997-2006 at at 0 day(s) since first case (CCKP)

9.0.119.1 Distribution

Distribution of values for month_rain_agg97_06_1

Distribution of values for month_rain_agg97_06_1

0 missing values.

9.0.119.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
month_rain_agg97_06_1 Avg. Decennial Rain (Millimiters) 1997-2006 at at 0 day(s) since first case (CCKP) numeric 0 1 2.3 81 270 94.06925 66.05236 <U+2587><U+2586><U+2585><U+2582><U+2581>

9.0.120 month_rain_agg97_06_30

Avg. Decennial Rain (Millimiters) 1997-2006 at at 30 day(s) since first case (CCKP)

9.0.120.1 Distribution

Distribution of values for month_rain_agg97_06_30

Distribution of values for month_rain_agg97_06_30

0 missing values.

9.0.120.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_rain_agg97_06_30 Avg. Decennial Rain (Millimiters) 1997-2006 at at 30 day(s) since first case (CCKP) numeric 0 1 -Inf 81 270 -Inf <U+2587><U+2586><U+2585><U+2582><U+2581>

9.0.121 month_rain_agg97_06_60

Avg. Decennial Rain (Millimiters) 1997-2006 at at 60 day(s) since first case (CCKP)

9.0.121.1 Distribution

Distribution of values for month_rain_agg97_06_60

Distribution of values for month_rain_agg97_06_60

0 missing values.

9.0.121.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_rain_agg97_06_60 Avg. Decennial Rain (Millimiters) 1997-2006 at at 60 day(s) since first case (CCKP) numeric 0 1 -Inf 81 270 -Inf <U+2587><U+2586><U+2585><U+2582><U+2581>

9.0.122 month_rain_agg97_06_90

Avg. Decennial Rain (Millimiters) 1997-2006 at at 90 day(s) since first case (CCKP)

9.0.122.1 Distribution

Distribution of values for month_rain_agg97_06_90

Distribution of values for month_rain_agg97_06_90

0 missing values.

9.0.122.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_rain_agg97_06_90 Avg. Decennial Rain (Millimiters) 1997-2006 at at 90 day(s) since first case (CCKP) numeric 0 1 -Inf 81 270 -Inf <U+2587><U+2586><U+2585><U+2582><U+2581>

9.0.123 month_rain_agg97_06_120

Avg. Decennial Rain (Millimiters) 1997-2006 at at 120 day(s) since first case (CCKP)

9.0.123.1 Distribution

Distribution of values for month_rain_agg97_06_120

Distribution of values for month_rain_agg97_06_120

0 missing values.

9.0.123.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_rain_agg97_06_120 Avg. Decennial Rain (Millimiters) 1997-2006 at at 120 day(s) since first case (CCKP) numeric 0 1 -Inf 81 270 -Inf <U+2587><U+2586><U+2585><U+2582><U+2581>

9.0.124 month_rain_agg07_16_1

Avg. Decennial Rain (Millimiters) 2007-2016 at at 0 day(s) since first case (CCKP)

9.0.124.1 Distribution

Distribution of values for month_rain_agg07_16_1

Distribution of values for month_rain_agg07_16_1

0 missing values.

9.0.124.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
month_rain_agg07_16_1 Avg. Decennial Rain (Millimiters) 2007-2016 at at 0 day(s) since first case (CCKP) numeric 0 1 2.4 81 290 94.89007 67.26111 <U+2587><U+2586><U+2583><U+2582><U+2581>

9.0.125 month_rain_agg07_16_30

Avg. Decennial Rain (Millimiters) 2007-2016 at at 30 day(s) since first case (CCKP)

9.0.125.1 Distribution

Distribution of values for month_rain_agg07_16_30

Distribution of values for month_rain_agg07_16_30

0 missing values.

9.0.125.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_rain_agg07_16_30 Avg. Decennial Rain (Millimiters) 2007-2016 at at 30 day(s) since first case (CCKP) numeric 0 1 -Inf 80 290 -Inf <U+2587><U+2586><U+2583><U+2582><U+2581>

9.0.126 month_rain_agg07_16_60

Avg. Decennial Rain (Millimiters) 2007-2016 at at 60 day(s) since first case (CCKP)

9.0.126.1 Distribution

Distribution of values for month_rain_agg07_16_60

Distribution of values for month_rain_agg07_16_60

0 missing values.

9.0.126.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_rain_agg07_16_60 Avg. Decennial Rain (Millimiters) 2007-2016 at at 60 day(s) since first case (CCKP) numeric 0 1 -Inf 80 290 -Inf <U+2587><U+2586><U+2583><U+2582><U+2581>

9.0.127 month_rain_agg07_16_90

Avg. Decennial Rain (Millimiters) 2007-2016 at at 90 day(s) since first case (CCKP)

9.0.127.1 Distribution

Distribution of values for month_rain_agg07_16_90

Distribution of values for month_rain_agg07_16_90

0 missing values.

9.0.127.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_rain_agg07_16_90 Avg. Decennial Rain (Millimiters) 2007-2016 at at 90 day(s) since first case (CCKP) numeric 0 1 -Inf 80 290 -Inf <U+2587><U+2586><U+2583><U+2582><U+2581>

9.0.128 month_rain_agg07_16_120

Avg. Decennial Rain (Millimiters) 2007-2016 at at 120 day(s) since first case (CCKP)

9.0.128.1 Distribution

Distribution of values for month_rain_agg07_16_120

Distribution of values for month_rain_agg07_16_120

0 missing values.

9.0.128.2 Summary statistics

## Warning in inline_hist(., 5): Variable contains Inf or -Inf value(s) that were
## converted to NA.
name label data_type n_missing complete_rate min median max mean hist
month_rain_agg07_16_120 Avg. Decennial Rain (Millimiters) 2007-2016 at at 120 day(s) since first case (CCKP) numeric 0 1 -Inf 80 290 -Inf <U+2587><U+2586><U+2583><U+2582><U+2581>

9.0.129 month_temp_16

Avg. Monthly Temperature (celsius) in 2016 (CCKP)

9.0.129.1 Distribution

Distribution of values for month_temp_16

Distribution of values for month_temp_16

0 missing values.

9.0.129.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
month_temp_16 Avg. Monthly Temperature (celsius) in 2016 (CCKP) numeric 0 1 -24 21 32 16.52591 11.82087 <U+2581><U+2581><U+2583><U+2583><U+2587>

9.0.130 month_rainfall_mm_16

Avg. Monthly Rain (Millimiters) in 2016 (CCKP)

9.0.130.1 Distribution

Distribution of values for month_rainfall_mm_16

Distribution of values for month_rainfall_mm_16

0 missing values.

9.0.130.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
month_rainfall_mm_16 Avg. Monthly Rain (Millimiters) in 2016 (CCKP) numeric 0 1 0 59 421 78.05566 75.57166 <U+2587><U+2582><U+2581><U+2581><U+2581>

9.0.131 month_temp_07

Avg. Monthly Temperature (celsius) in 2007 (CCKP)

9.0.131.1 Distribution

Distribution of values for month_temp_07

Distribution of values for month_temp_07

0 missing values.

9.0.131.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
month_temp_07 Avg. Monthly Temperature (celsius) in 2007 (CCKP) numeric 0 1 -21 21 31 16.01005 11.87286 <U+2581><U+2582><U+2583><U+2582><U+2587>

9.0.132 month_rainfall_mm_07

Avg. Monthly Rain (Millimiters) in 2007 (CCKP)

9.0.132.1 Distribution

Distribution of values for month_rainfall_mm_07

Distribution of values for month_rainfall_mm_07

0 missing values.

9.0.132.2 Summary statistics

name label data_type n_missing complete_rate min median max mean sd hist
month_rainfall_mm_07 Avg. Monthly Rain (Millimiters) in 2007 (CCKP) numeric 0 1 0 54 886 86.175 109.5921 <U+2587><U+2581><U+2581><U+2581><U+2581>

9.1 Missingness report

9.2 Codebook table

JSON-LD metadata

The following JSON-LD can be found by search engines, if you share this codebook publicly on the web.

{
  "name": "Join of Datasets for COVID",
  "description": "Owid data is available here (https://github.com/owid/covid-19-data/blob/master/public/data/owid-covid-data-codebook.md); The reported weather station refers to the nearest station which provides temperature measurements, but rainfall and snowfall may come from a different nearby weather station. In all cases, only weather stations which are at most 300km from the location coordinates are considered.\n\n\n## Table of variables\nThis table contains variable names, labels, and number of missing values.\nSee the complete codebook for more.\n\n[truncated]\n\n### Note\nThis dataset was automatically described using the [codebook R package](https://rubenarslan.github.io/codebook/) (version 0.9.2).",
  "datePublished": "2020-11-08",
  "keywords": ["country", "iso_code", "text", "continent", "population", "population_density", "median_age", "aged_70_older", "gdp_per_capita", "diabetes_prevalence", "life_expectancy", "hdi_rank_2018", "hdi_index_2018", "year_total_pop", "total_pop", "year_pop_density", "pop_density", "year_air_pollution_year_pm25", "air_pollution_year_pm25", "year_life_exp", "life_exp", "dalys_asthma_normalized", "dalys_lung_disease", "obesity_both_percent", "owid_gbd_year", "low_resp_inf_dths", "respiratory_diseases_deaths", "diabetes_deaths", "life_exp_15_20", "month_temp_16_m", "month_rainfall_mm_16_m", "month_temp_07_m", "month_rainfall_mm_07_m", "jan", "feb", "mar", "apr", "may", "jun", "jul", "aug", "sep", "oct", "nov", "dec", "rate_lo_resp_inf_dth", "prop_lo_resp_inf_dth", "dates_1", "dates_30", "dates_60", "dates_90", "dates_120", "date_month_1", "date_month_30", "date_month_60", "date_month_90", "date_month_120", "cases_1", "cases_30", "cases_60", "cases_90", "cases_120", "cases_deaths_1", "cases_deaths_30", "cases_deaths_60", "cases_deaths_90", "cases_deaths_120", "ndays_zero_1", "ndays_zero_30", "ndays_zero_60", "ndays_zero_90", "ndays_zero_120", "stringency_ind_oxf_1", "stringency_ind_oxf_30", "stringency_ind_oxf_60", "stringency_ind_oxf_90", "stringency_ind_oxf_120", "monthly_temp_1", "monthly_temp_30", "monthly_temp_60", "monthly_temp_90", "monthly_temp_120", "monthly_prec_1", "monthly_prec_30", "monthly_prec_60", "monthly_prec_90", "monthly_prec_120", "month_temp_07_1", "month_temp_07_30", "month_temp_07_60", "month_temp_07_90", "month_temp_07_120", "month_rainfall_mm_07_1", "month_rainfall_mm_07_30", "month_rainfall_mm_07_60", "month_rainfall_mm_07_90", "month_rainfall_mm_07_120", "month_temp_16_1", "month_temp_16_30", "month_temp_16_60", "month_temp_16_90", "month_temp_16_120", "month_rainfall_mm_16_1", "month_rainfall_mm_16_30", "month_rainfall_mm_16_60", "month_rainfall_mm_16_90", "month_rainfall_mm_16_120", "month_temp_agg97_06_1", "month_temp_agg97_06_30", "month_temp_agg97_06_60", "month_temp_agg97_06_90", "month_temp_agg97_06_120", "month_temp_agg07_16_1", "month_temp_agg07_16_30", "month_temp_agg07_16_60", "month_temp_agg07_16_90", "month_temp_agg07_16_120", "month_rain_agg97_06_1", "month_rain_agg97_06_30", "month_rain_agg97_06_60", "month_rain_agg97_06_90", "month_rain_agg97_06_120", "month_rain_agg07_16_1", "month_rain_agg07_16_30", "month_rain_agg07_16_60", "month_rain_agg07_16_90", "month_rain_agg07_16_120", "month_temp_16", "month_rainfall_mm_16", "month_temp_07", "month_rainfall_mm_07"],
  "@context": "http://schema.org/",
  "@type": "Dataset",
  "variableMeasured": [
    {
      "name": "country",
      "description": "Country Name (OWID)",
      "@type": "propertyValue"
    },
    {
      "name": "iso_code",
      "description": "3-letter-ISO Code (OWID)",
      "@type": "propertyValue"
    },
    {
      "name": "text",
      "description": "Summary of Information Regarding Cases and ID of the Country",
      "@type": "propertyValue"
    },
    {
      "name": "continent",
      "description": "Continent of the Country (OWID)",
      "@type": "propertyValue"
    },
    {
      "name": "population",
      "description": "Total Pop. (GAPMINDER, HYDE & UN by OWID)",
      "@type": "propertyValue"
    },
    {
      "name": "population_density",
      "description": "No. people/land area, in km2 (2017) (WB in OWID)",
      "@type": "propertyValue"
    },
    {
      "name": "median_age",
      "description": "Median age of the population, UN projection for 2020 from 2017 (UN in OWID)",
      "@type": "propertyValue"
    },
    {
      "name": "aged_70_older",
      "description": "Share of the population that is >=65 yrs, most recent year in 2015 (WB Dev Ind in OWID)",
      "@type": "propertyValue"
    },
    {
      "name": "gdp_per_capita",
      "description": "Gross domestic product at purchasing power parity (constant 2011 international dollars), most recent year available (WB Dev Ind)",
      "@type": "propertyValue"
    },
    {
      "name": "diabetes_prevalence",
      "description": "Diabetes prevalence (% of population aged 20 to 79) in 2017 (WB Dev Ind in OWID)",
      "@type": "propertyValue"
    },
    {
      "name": "life_expectancy",
      "description": "Life expectancy at birth in 2019 (UN in OWID)",
      "@type": "propertyValue"
    },
    {
      "name": "hdi_rank_2018",
      "description": "Human Development Ranking 2018 (UN)",
      "@type": "propertyValue"
    },
    {
      "name": "hdi_index_2018",
      "description": "Human Development Index 2018 (0-100) (UN)",
      "@type": "propertyValue"
    },
    {
      "name": "year_total_pop",
      "description": "Year of the available Population Number (WB)",
      "@type": "propertyValue"
    },
    {
      "name": "total_pop",
      "description": "Population Number (WB)",
      "@type": "propertyValue"
    },
    {
      "name": "year_pop_density",
      "description": "Year of the available Population Density (WB)",
      "@type": "propertyValue"
    },
    {
      "name": "pop_density",
      "description": "Population Number (WB)",
      "@type": "propertyValue"
    },
    {
      "name": "year_air_pollution_year_pm25",
      "description": "Year of available Air pollution, mean annual exposure (mm per m^3) for GBD17 (WB)",
      "@type": "propertyValue"
    },
    {
      "name": "air_pollution_year_pm25",
      "description": "Air pollution, mean annual exposure (mm per m^3) for GBD17 (WB)",
      "@type": "propertyValue"
    },
    {
      "name": "year_life_exp",
      "description": "Year of the available number of Life expectancy at birth (WB)",
      "@type": "propertyValue"
    },
    {
      "name": "life_exp",
      "description": "Life expectancy at birth (WB)",
      "@type": "propertyValue"
    },
    {
      "name": "dalys_asthma_normalized",
      "description": "YLLs to premature death and disabillity due to asthma (GBD in COVID19 spreadsheet)",
      "@type": "propertyValue"
    },
    {
      "name": "dalys_lung_disease",
      "description": "YLLs to premature death and disabillity due to lung disease (GBD in COVID19 spreadsheet)",
      "@type": "propertyValue"
    },
    {
      "name": "obesity_both_percent",
      "description": "Percentage of Obesity for Both Sexes (GBD in COVID19 spreadsheet)",
      "@type": "propertyValue"
    },
    {
      "name": "owid_gbd_year",
      "description": "Year of the available Data of Global Burden of Disease (GBD in OWID)",
      "@type": "propertyValue"
    },
    {
      "name": "low_resp_inf_dths",
      "description": "Deaths due to Lower Respiratory Infections (GBD in OWID)",
      "@type": "propertyValue"
    },
    {
      "name": "respiratory_diseases_deaths",
      "description": "Deaths due to Respiratory Diseases (GBD in OWID)",
      "@type": "propertyValue"
    },
    {
      "name": "diabetes_deaths",
      "description": "Deaths due to Diabetes (GBD in OWID)",
      "@type": "propertyValue"
    },
    {
      "name": "life_exp_15_20",
      "description": "Expected Life Expectancy at Age 60 (WHO)",
      "@type": "propertyValue"
    },
    {
      "name": "month_temp_16_m",
      "description": "Avg. Yearly Temperature (celsius) in 2016 (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_rainfall_mm_16_m",
      "description": "Avg. Yearly Rain (Millimiters) in 2016 (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_temp_07_m",
      "description": "Avg. Yearly  Temperature (celsius) in 2007 (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_rainfall_mm_07_m",
      "description": "Avg. Yearly Rain (Millimiters) in 2007 (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "jan",
      "description": "Avg. Monthly Temperature (celsius) in 2016, January",
      "@type": "propertyValue"
    },
    {
      "name": "feb",
      "description": "Avg. Monthly Temperature (celsius) in 2016, February",
      "@type": "propertyValue"
    },
    {
      "name": "mar",
      "description": "Avg. Monthly Temperature (celsius) in 2016, March",
      "@type": "propertyValue"
    },
    {
      "name": "apr",
      "description": "Avg. Monthly Temperature (celsius) in 2016, April",
      "@type": "propertyValue"
    },
    {
      "name": "may",
      "description": "Avg. Monthly Temperature (celsius) in 2016, May",
      "@type": "propertyValue"
    },
    {
      "name": "jun",
      "@type": "propertyValue"
    },
    {
      "name": "jul",
      "description": "Avg. Monthly Temperature (celsius) in 2016, July",
      "@type": "propertyValue"
    },
    {
      "name": "aug",
      "description": "Avg. Monthly Temperature (celsius) in 2016, August",
      "@type": "propertyValue"
    },
    {
      "name": "sep",
      "description": "Avg. Monthly Temperature (celsius) in 2016, September",
      "@type": "propertyValue"
    },
    {
      "name": "oct",
      "description": "Avg. Monthly Temperature (celsius) in 2016, October",
      "@type": "propertyValue"
    },
    {
      "name": "nov",
      "description": "Avg. Monthly Temperature (celsius) in 2016, November",
      "@type": "propertyValue"
    },
    {
      "name": "dec",
      "description": "Avg. Monthly Temperature (celsius) in 2016, December",
      "@type": "propertyValue"
    },
    {
      "name": "rate_lo_resp_inf_dth",
      "description": "Deaths due to Lower Respiratory Infections per 100M (GBD in OWID)",
      "@type": "propertyValue"
    },
    {
      "name": "prop_lo_resp_inf_dth",
      "description": "Prop. of Deaths due to Lower Respiratory Infections of the Total Pop (GBD in OWID)",
      "@type": "propertyValue"
    },
    {
      "name": "dates_1",
      "description": "Date (Date format) at 0 day(s) since first case (JHU)",
      "@type": "propertyValue"
    },
    {
      "name": "dates_30",
      "description": "Date (Date format) at 30 day(s) since first case (JHU)",
      "@type": "propertyValue"
    },
    {
      "name": "dates_60",
      "description": "Date (Date format) at 60 day(s) since first case (JHU)",
      "@type": "propertyValue"
    },
    {
      "name": "dates_90",
      "description": "Date (Date format) at 90 day(s) since first case (JHU)",
      "@type": "propertyValue"
    },
    {
      "name": "dates_120",
      "description": "Date (Date format) at 120 day(s) since first case (JHU)",
      "@type": "propertyValue"
    },
    {
      "name": "date_month_1",
      "description": "3-char Month of Date (Character) at 0 day(s) since first case (JHU)",
      "@type": "propertyValue"
    },
    {
      "name": "date_month_30",
      "description": "3-char Month of Date (Character) at 30 day(s) since first case (JHU)",
      "@type": "propertyValue"
    },
    {
      "name": "date_month_60",
      "description": "3-char Month of Date (Character) at 60 day(s) since first case (JHU)",
      "@type": "propertyValue"
    },
    {
      "name": "date_month_90",
      "description": "3-char Month of Date (Character) at 90 day(s) since first case (JHU)",
      "@type": "propertyValue"
    },
    {
      "name": "date_month_120",
      "description": "3-char Month of Date (Character) at 120 day(s) since first case (JHU)",
      "@type": "propertyValue"
    },
    {
      "name": "cases_1",
      "description": "No. of Confirmed Deaths at 0 day(s) since first case (JHU)",
      "@type": "propertyValue"
    },
    {
      "name": "cases_30",
      "description": "No. of Confirmed Deaths at 30 day(s) since first case (JHU)",
      "@type": "propertyValue"
    },
    {
      "name": "cases_60",
      "description": "No. of Confirmed Deaths at 60 day(s) since first case (JHU)",
      "@type": "propertyValue"
    },
    {
      "name": "cases_90",
      "description": "No. of Confirmed Deaths at 90 day(s) since first case (JHU)",
      "@type": "propertyValue"
    },
    {
      "name": "cases_120",
      "description": "No. of Confirmed Deaths at 120 day(s) since first case (JHU)",
      "@type": "propertyValue"
    },
    {
      "name": "cases_deaths_1",
      "description": "No. of Confirmed Deaths at 0 day(s) since first case (JHU)",
      "@type": "propertyValue"
    },
    {
      "name": "cases_deaths_30",
      "description": "No. of Confirmed Deaths at 30 day(s) since first case (JHU)",
      "@type": "propertyValue"
    },
    {
      "name": "cases_deaths_60",
      "description": "No. of Confirmed Deaths at 60 day(s) since first case (JHU)",
      "@type": "propertyValue"
    },
    {
      "name": "cases_deaths_90",
      "description": "No. of Confirmed Deaths at 90 day(s) since first case (JHU)",
      "@type": "propertyValue"
    },
    {
      "name": "cases_deaths_120",
      "description": "No. of Confirmed Deaths at 120 day(s) since first case (JHU)",
      "@type": "propertyValue"
    },
    {
      "name": "ndays_zero_1",
      "description": "No. of Days since the first case worldwide at 0 day(s) since first case",
      "@type": "propertyValue"
    },
    {
      "name": "ndays_zero_30",
      "description": "No. of Days since the first case worldwide at 30 day(s) since first case",
      "@type": "propertyValue"
    },
    {
      "name": "ndays_zero_60",
      "description": "No. of Days since the first case worldwide at 60 day(s) since first case",
      "@type": "propertyValue"
    },
    {
      "name": "ndays_zero_90",
      "description": "No. of Days since the first case worldwide at 90 day(s) since first case",
      "@type": "propertyValue"
    },
    {
      "name": "ndays_zero_120",
      "description": "No. of Days since the first case worldwide at 120 day(s) since first case",
      "@type": "propertyValue"
    },
    {
      "name": "stringency_ind_oxf_1",
      "description": "Government Response Stringency Index at 0 day(s) since first case (OXF)",
      "@type": "propertyValue"
    },
    {
      "name": "stringency_ind_oxf_30",
      "description": "Government Response Stringency Index at 30 day(s) since first case (OXF)",
      "@type": "propertyValue"
    },
    {
      "name": "stringency_ind_oxf_60",
      "description": "Government Response Stringency Index at 60 day(s) since first case (OXF)",
      "@type": "propertyValue"
    },
    {
      "name": "stringency_ind_oxf_90",
      "description": "Government Response Stringency Index at 90 day(s) since first case (OXF)",
      "@type": "propertyValue"
    },
    {
      "name": "stringency_ind_oxf_120",
      "description": "Government Response Stringency Index at 120 day(s) since first case (OXF)",
      "@type": "propertyValue"
    },
    {
      "name": "monthly_temp_1",
      "description": "Monthly avg. temperature (celsius) for all 12m from 1901 to 2009 at 0 day(s) since first case (rWBclimate)",
      "@type": "propertyValue"
    },
    {
      "name": "monthly_temp_30",
      "description": "Monthly avg. temperature (celsius) for all 12m from 1901 to 2009 at 30 day(s) since first case (rWBclimate)",
      "@type": "propertyValue"
    },
    {
      "name": "monthly_temp_60",
      "description": "Monthly avg. temperature (celsius) for all 12m from 1901 to 2009 at 60 day(s) since first case (rWBclimate)",
      "@type": "propertyValue"
    },
    {
      "name": "monthly_temp_90",
      "description": "Monthly avg. temperature (celsius) for all 12m from 1901 to 2009 at 90 day(s) since first case (rWBclimate)",
      "@type": "propertyValue"
    },
    {
      "name": "monthly_temp_120",
      "description": "Monthly avg. temperature (celsius) for all 12m from 1901 to 2009 at 120 day(s) since first case (rWBclimate)",
      "@type": "propertyValue"
    },
    {
      "name": "monthly_prec_1",
      "description": "Monthly avg. precipitation (mm) for all 12m from 1901 to 2009 at 0 day(s) since first case (rWBclimate)",
      "@type": "propertyValue"
    },
    {
      "name": "monthly_prec_30",
      "description": "Monthly avg. precipitation (mm) for all 12m from 1901 to 2009 at 30 day(s) since first case (rWBclimate)",
      "@type": "propertyValue"
    },
    {
      "name": "monthly_prec_60",
      "description": "Monthly avg. precipitation (mm) for all 12m from 1901 to 2009 at 60 day(s) since first case (rWBclimate)",
      "@type": "propertyValue"
    },
    {
      "name": "monthly_prec_90",
      "description": "Monthly avg. precipitation (mm) for all 12m from 1901 to 2009 at 90 day(s) since first case (rWBclimate)",
      "@type": "propertyValue"
    },
    {
      "name": "monthly_prec_120",
      "description": "Monthly avg. precipitation (mm) for all 12m from 1901 to 2009 at 120 day(s) since first case (rWBclimate)",
      "@type": "propertyValue"
    },
    {
      "name": "month_temp_07_1",
      "description": "Avg. Monthly Temperature (celsius) in 2007 at 0 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_temp_07_30",
      "description": "Avg. Monthly Temperature (celsius) in 2007 at 30 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_temp_07_60",
      "description": "Avg. Monthly Temperature (celsius) in 2007 at 60 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_temp_07_90",
      "description": "Avg. Monthly Temperature (celsius) in 2007 at 90 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_temp_07_120",
      "description": "Avg. Monthly Temperature (celsius) in 2007 at 120 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_rainfall_mm_07_1",
      "description": "Avg. Monthly Rain (Millimiters) in 2007 at 0 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_rainfall_mm_07_30",
      "description": "Avg. Monthly Rain (Millimiters) in 2007 at 30 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_rainfall_mm_07_60",
      "description": "Avg. Monthly Rain (Millimiters) in 2007 at 60 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_rainfall_mm_07_90",
      "description": "Avg. Monthly Rain (Millimiters) in 2007 at 90 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_rainfall_mm_07_120",
      "description": "Avg. Monthly Rain (Millimiters) in 2007 at 120 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_temp_16_1",
      "description": "Avg. Monthly Temperature (celsius) in 2016 at 0 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_temp_16_30",
      "description": "Avg. Monthly Temperature (celsius) in 2016 at 30 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_temp_16_60",
      "description": "Avg. Monthly Temperature (celsius) in 2016 at 60 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_temp_16_90",
      "description": "Avg. Monthly Temperature (celsius) in 2016 at 90 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_temp_16_120",
      "description": "Avg. Monthly Temperature (celsius) in 2016 at 120 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_rainfall_mm_16_1",
      "description": "Avg. Monthly Rain (Millimiters) in 2016 at 0 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_rainfall_mm_16_30",
      "description": "Avg. Monthly Rain (Millimiters) in 2016 at 30 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_rainfall_mm_16_60",
      "description": "Avg. Monthly Rain (Millimiters) in 2016 at 60 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_rainfall_mm_16_90",
      "description": "Avg. Monthly Rain (Millimiters) in 2016 at 90 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_rainfall_mm_16_120",
      "description": "Avg. Monthly Rain (Millimiters) in 2016 at 120 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_temp_agg97_06_1",
      "description": "Avg. Decennial Temp (Millimiters) 1997-2006 at at 0 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_temp_agg97_06_30",
      "description": "Avg. Decennial Temp (Millimiters) 1997-2006 at at 30 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_temp_agg97_06_60",
      "description": "Avg. Decennial Temp (Millimiters) 1997-2006 at at 60 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_temp_agg97_06_90",
      "description": "Avg. Decennial Temp (Millimiters) 1997-2006 at at 90 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_temp_agg97_06_120",
      "description": "Avg. Decennial Temp (Millimiters) 1997-2006 at at 120 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_temp_agg07_16_1",
      "description": "Avg. Decennial Temp (Millimiters) 2007-2016 at at 0 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_temp_agg07_16_30",
      "description": "Avg. Decennial Temp (Millimiters) 2007-2016 at at 30 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_temp_agg07_16_60",
      "description": "Avg. Decennial Temp (Millimiters) 2007-2016 at at 60 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_temp_agg07_16_90",
      "description": "Avg. Decennial Temp (Millimiters) 2007-2016 at at 90 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_temp_agg07_16_120",
      "description": "Avg. Decennial Temp (Millimiters) 2007-2016 at at 120 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_rain_agg97_06_1",
      "description": "Avg. Decennial Rain (Millimiters) 1997-2006 at at 0 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_rain_agg97_06_30",
      "description": "Avg. Decennial Rain (Millimiters) 1997-2006 at at 30 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_rain_agg97_06_60",
      "description": "Avg. Decennial Rain (Millimiters) 1997-2006 at at 60 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_rain_agg97_06_90",
      "description": "Avg. Decennial Rain (Millimiters) 1997-2006 at at 90 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_rain_agg97_06_120",
      "description": "Avg. Decennial Rain (Millimiters) 1997-2006 at at 120 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_rain_agg07_16_1",
      "description": "Avg. Decennial Rain (Millimiters) 2007-2016 at at 0 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_rain_agg07_16_30",
      "description": "Avg. Decennial Rain (Millimiters) 2007-2016 at at 30 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_rain_agg07_16_60",
      "description": "Avg. Decennial Rain (Millimiters) 2007-2016 at at 60 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_rain_agg07_16_90",
      "description": "Avg. Decennial Rain (Millimiters) 2007-2016 at at 90 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_rain_agg07_16_120",
      "description": "Avg. Decennial Rain (Millimiters) 2007-2016 at at 120 day(s) since first case (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_temp_16",
      "description": "Avg. Monthly Temperature (celsius) in 2016 (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_rainfall_mm_16",
      "description": "Avg. Monthly Rain (Millimiters) in 2016 (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_temp_07",
      "description": "Avg. Monthly Temperature (celsius) in 2007 (CCKP)",
      "@type": "propertyValue"
    },
    {
      "name": "month_rainfall_mm_07",
      "description": "Avg. Monthly Rain (Millimiters) in 2007 (CCKP)",
      "@type": "propertyValue"
    }
  ]
}`

#References