{smcl} {* version 1.0.1, 23Jun2023 }{...} {cmd:help xtstfetchcovid19} {hline} {title:Title} {pstd} {hi: Downloads COVID-19 Datasets from the COVID-19 Data Hub} {title:Syntax} {phang2} {cmd:xtstfetchcovid19} {cmd:,} {it:options} {synoptset 29 tabbed}{...} {synopthdr} {synoptline} {synopt:{opt pathz(string)}}indicates the complete file path where to save the new downloaded dataset. This option is required {p_end} {synopt :{opt granulev(#)}}designates the 3 different levels of granularity of the datasets. The values of {hi:#} must be: 1, 2 or 3. Default is {hi:granulev(1)}{p_end} {synopt:{opt sav:ing(filename [, replace])}}allows to save the new downloaded dataset that the command downloads. {opt replace} specifies that the file may be replaced if it already exists {p_end} {synoptline} {title:Description} {pstd} {cmd:xtstfetchcovid19} downloads COVID-19 datasets from the COVID-19 Data Hub. The command {cmd:xtstfetchcovid19} allows to download COVID-19/CORONAVIRUS/SARS-CoV-2 datasets in {hi:Stata} format at 3 different levels of granularity: country-level data (level 1), state-level data (level 2) and city-level data (level 3). It permits to obtain time series and panel datasets on numerous variables, such as: the number confirmed cases, deaths, recovered cases, tests, vaccines, people vaccinated, hospitalized patients, people in intensive care unit, latitude, longitude, population, key google mobility, key apple mobility, etc. The downloaded datasets can be aggregated at any frequency: daily, weekly, monthly, yearly, etc. Cross-sections of the datasets can also be obtained after transforming the downloaded data. All these datasets come from the COVID-19 Data Hub which is a website dedicated to make integrated COVID-19 data available to the wider community of researchers around the world for a deeper insight into COVID-19. {title:Options} {phang} {opt pathz(string)} indicates the complete file path where to save the new downloaded dataset. In this option, you specify the complete file path where you want to save the data downloaded by the command. If your file path contains blank spaces, you must enclose the path in double quotes. This option is required. {phang} {opt granulev(#)} designates the 3 different levels of granularity of the datasets. The values of {hi:#} must be: 1, 2 or 3. These numbers correspond to the 3 different levels of granularity of the datasets: administrative area of top-level, usually countries (level 1); states, regions, cantons (level 2); and cities, municipalities (level 3). The default value of this option is {hi:granulev(1)}, meaning that by default, country-level data (level 1) will be downloaded. {phang} {opt sav:ing}{cmd:(}{it:{help filename}} [{cmd:,} {it:replace}]{cmd:)} allows to save the new downloaded dataset that the command downloads. This option indicates the name of the diskfile to be created or replaced. If {it:filename} is specified without an extension, {hi:.dta} will be assumed. If the {it:filename} includes blank spaces, you must enclose the {it:filename} in double quotes. The sub-option {opt replace} specifies that the file may be replaced if it already exists. {title:Examples} {p 4 8 2} Before beginning the computations, we use the {hi:set more off} instruction to tell {hi:Stata} not to pause when displaying the output. {p_end} {p 4 8 2}{stata "set more off"}{p_end} {p 4 8 2} In order to ease presentation and understanding, this {hi:Examples} section is divided into 8 blocks. Each block treats a different topic. {p_end} {p 4 8 2} {hi:BLOCK 1} {p_end} {p 4 8 2} In this block, we illustrate how to use the command {cmd:xtstfetchcovid19} with minimal syntax without saving the data. We show how to extract the data for a group of countries (panel data) and for just one country (time series data). {p_end} {p 4 8 2} We begin by writing the name of the command {cmd:xtstfetchcovid19}, followed by the option {opt pathz(string)}. In this option, we put, in double quotes, the complete file path where we want to save the data downloaded by the command. This option is required. {p_end} {p 4 8 2} Before continuing, a few notes on the {opt pathz(string)} option. Assume that you have Windows as your Operating System and you want to save the data downloaded by the command {cmd:xtstfetchcovid19} in a folder named {hi:"mystatagraphs"} located in the {hi:"C:\"} drive. So, the full path name is {hi:"C:\mystatagraphs"}. Note that, you must physically create this folder; otherwise, the next instruction will not work at all. Also, if you have an Operating System other than Windows, you must supply the correct file path according to your Platform. {p_end} {p 4 8 2} Since we do not specify the option {opt granulev(#)}, the default value of this option is used, in other words {hi:granulev(1)}. Meaning that by default, country-level data (level 1) will be downloaded. {p_end} {p 4 8 2}{stata `"xtstfetchcovid19, pathz("C:\mystatagraphs")"'}{p_end} {p 4 8 2} The downloaded data do not come with labeled variables. But the variables names are self-descriptive. Meaning that, if you show their full names, you can infer what they are. Hence, we employ the {hi:describe} command with the {hi:fullnames} option to see the full names of the variables of the downloaded dataset. {p_end} {p 4 8 2}{stata "describe, fullnames"}{p_end} {p 4 8 2} Also, for your information, all the variables that come with the datasets downloaded by the command {cmd:xtstfetchcovid19} are fully described in the article of {hi:Guidotti (2022)}. Thus, I strongly encourage you to take a look at this paper if you need further information on the description of the variables that come with these datasets, please. {p_end} {p 4 8 2} The previously downloaded database is a panel dataset for many countries in the world. If we want just to extract the data for a smaller number of countries, for example: China, France, Italy and the United States, we type. {p_end} {p 4 8 2}{stata `"keep if (administrative_area_level_1 == "China" | administrative_area_level_1 == "France" | administrative_area_level_1 == "Italy" | administrative_area_level_1 == "United States")"'}{p_end} {p 4 8 2} If we just want to extract the data as a time series data for just one country, for example the United States, we type. {p_end} {p 4 8 2}{stata `"keep if administrative_area_level_1 == "United States""'}{p_end} {p 4 8 2} {hi:BLOCK 2} {p_end} {p 4 8 2} In this block, we demonstrate how to utilize the command {cmd:xtstfetchcovid19} to save the daily data, set the date to a {hi:Stata} readable format and calculate the active cases. {p_end} {p 4 8 2} To save the data, we specify the option {opt sav:ing}{cmd:(}{it:{help filename}} [{cmd:,} {it:replace}]{cmd:)} by indicating the name of the file in which we want to save the downloaded database, in double quotes {hi:"covid19level1daily.dta"}. We also indicate the sub-option {opt replace}, because we want to overwrite the file if it already exists. {p_end} {p 4 8 2}{stata `"xtstfetchcovid19, pathz("C:\mystatagraphs") saving("covid19level1daily.dta", replace)"'}{p_end} {p 4 8 2} In the downloaded dataset {hi:"covid19level1daily.dta"}, the date is the variable named {hi:"date"}. To transform the content of this variable to a {hi:Stata} readable date format, we first get rid of the hyphen symbol by using the string function {hi:subinstr()} (please see {bf:{manhelp functions FN}} for more details). {p_end} {p 4 8 2}{stata `"generate datest1 = subinstr(date,"-","",.)"'}{p_end} {p 4 8 2} Second, we transform the newly generated variable {hi:"datest1"} to a {hi:Stata} readable daily date by using the date function {hi:daily()} (please see {bf:{manhelp functions FN}} for more details). {p_end} {p 4 8 2}{stata `"generate datest2 = daily(datest1, "YMD")"'}{p_end} {p 4 8 2} Third, we use the command {hi:format} to change the newly generated variable {hi:"datest2"} to a {hi:Stata} days calendar date format and to a human readable format (please see {bf:{manhelp format D}} for more details). {p_end} {p 4 8 2}{stata `"format datest2 %td"'}{p_end} {p 4 8 2} Now, we sort the database by {hi:"administrative_area_level_1"} and {hi:"datest2"}. {p_end} {p 4 8 2}{stata "sort administrative_area_level_1 datest2"}{p_end} {p 4 8 2} Then, we group the {hi:"administrative_area_level_1"} variable by using the command {hi:egen} (please see {bf:{manhelp egen D}} for more details). {p_end} {p 4 8 2}{stata "egen adminarealevel1iden = group(administrative_area_level_1)"}{p_end} {p 4 8 2} Finally, we declare the data to be daily panel data by using the command {hi:xtset} (please see {bf:{manhelp xtset XT}} for more details). {p_end} {p 4 8 2}{stata "xtset adminarealevel1iden datest2, daily"}{p_end} {p 4 8 2} Now, we generate the {hi:Number of Active Cases of COVID-19}. In fact, many of the variables that come with the downloaded datasets by the command {cmd:xtstfetchcovid19} represent {hi:Cumulative Number of Cases}. But, for most practical statistical and econometrical purposes, we are interested in the {hi:Number of Active Cases of COVID-19}. In the next lines, we illustrate how to calculate the {hi:Number of Active Cases} by using the time-series operator {hi:D.}, which stands for {hi:The First Difference Operator} (please see {bf:{manhelp tsvarlist U}} for more details). {p_end} {p 4 8 2}{stata "generate double confirmedactive = D.confirmed"}{p_end} {p 4 8 2}{stata "generate double deathsactive = D.deaths"}{p_end} {p 4 8 2}{stata "generate double recoveredactive = D.recovered"}{p_end} {p 4 8 2} In the 3 previous lines, we have created the number of active cases of confirmed, deaths and recovered respectively on a daily basis for each country in our panel database. {p_end} {p 4 8 2} We finish this block by saving all the changes we made to our dataset since we last downloaded it. {p_end} {p 4 8 2}{stata `"save "covid19level1daily.dta", replace"'}{p_end} {p 4 8 2} {hi:BLOCK 3} {p_end} {p 4 8 2} In this block, we mainly show how to aggregate the data at a weekly frequency. {p_end} {p 4 8 2} We begin by downloading the data and saving them as we did previously. {p_end} {p 4 8 2}{stata `"xtstfetchcovid19, pathz("C:\mystatagraphs") saving("covid19level1weekly.dta", replace)"'}{p_end} {p 4 8 2} Then, we perform the usual data managements we did in block 2. Please, see block 2 for more details on these data managements. {p_end} {p 4 8 2}{stata `"generate datest1 = subinstr(date,"-","",.)"'}{p_end} {p 4 8 2}{stata `"generate datest2 = daily(datest1, "YMD")"'}{p_end} {p 4 8 2}{stata "format datest2 %td"}{p_end} {p 4 8 2}{stata "sort administrative_area_level_1 datest2"}{p_end} {p 4 8 2}{stata "egen adminarealevel1iden = group(administrative_area_level_1)"}{p_end} {p 4 8 2}{stata "xtset adminarealevel1iden datest2, daily"}{p_end} {p 4 8 2}{stata "generate double confirmedactive = D.confirmed"}{p_end} {p 4 8 2}{stata "generate double deathsactive = D.deaths"}{p_end} {p 4 8 2}{stata "generate double recoveredactive = D.recovered"}{p_end} {p 4 8 2} Now, we begin our weekly data aggregation. We start, by creating a weekly date by using the function {hi:wofd()} (please see {bf:{manhelp functions FN}} for more details). {p_end} {p 4 8 2}{stata "generate weeklydatest = wofd(datest2)"}{p_end} {p 4 8 2} Then, we use the command {hi:format} to change the newly generated variable {hi:"weeklydatest"} to a {hi:Stata} calendar weeks format and to a human readable format (please see {bf:{manhelp format D}} for more details). {p_end} {p 4 8 2}{stata `"format weeklydatest %tw"'}{p_end} {p 4 8 2} We sort the database by {hi:"administrative_area_level_1"}, {hi:"adminarealevel1iden"}, {hi:"iso_alpha_3"}, and {hi:"weeklydatest"}. {p_end} {p 4 8 2}{stata "sort administrative_area_level_1 adminarealevel1iden iso_alpha_3 weeklydatest"}{p_end} {p 4 8 2} We aggregate the database at a weekly frequency by making a dataset of summary statistics by using the command {hi:collapse} (please see {bf:{manhelp collapse D}} for more details). {p_end} {p 4 8 2}{stata "collapse (sum) confirmedactive deathsactive recoveredactive (median) population, by(administrative_area_level_1 adminarealevel1iden iso_alpha_3 weeklydatest)"}{p_end} {p 4 8 2} We sort the database by {hi:"administrative_area_level_1"} and {hi:"weeklydatest"}. {p_end} {p 4 8 2}{stata "sort administrative_area_level_1 weeklydatest"}{p_end} {p 4 8 2} We declare the data to be weekly panel data by using the command {hi:xtset} (please see {bf:{manhelp xtset XT}} for more details). {p_end} {p 4 8 2}{stata "xtset adminarealevel1iden weeklydatest, weekly"}{p_end} {p 4 8 2} We finish this block by saving all the changes we made to our dataset since we last downloaded it. {p_end} {p 4 8 2}{stata `"save "covid19level1weekly.dta", replace"'}{p_end} {p 4 8 2} {hi:BLOCK 4} {p_end} {p 4 8 2} In this block, we mainly show how to aggregate the data at a monthly frequency. {p_end} {p 4 8 2} We begin by downloading the data and saving them as we did previously. {p_end} {p 4 8 2}{stata `"xtstfetchcovid19, pathz("C:\mystatagraphs") saving("covid19level1monthly.dta", replace)"'}{p_end} {p 4 8 2} Then, we perform the usual data managements we did in block 2. Please, see block 2 for more details on these data managements. {p_end} {p 4 8 2}{stata `"generate datest1 = subinstr(date,"-","",.)"'}{p_end} {p 4 8 2}{stata `"generate datest2 = daily(datest1, "YMD")"'}{p_end} {p 4 8 2}{stata "format datest2 %td"}{p_end} {p 4 8 2}{stata "sort administrative_area_level_1 datest2"}{p_end} {p 4 8 2}{stata "egen adminarealevel1iden = group(administrative_area_level_1)"}{p_end} {p 4 8 2}{stata "xtset adminarealevel1iden datest2, daily"}{p_end} {p 4 8 2}{stata "generate double confirmedactive = D.confirmed"}{p_end} {p 4 8 2}{stata "generate double deathsactive = D.deaths"}{p_end} {p 4 8 2}{stata "generate double recoveredactive = D.recovered"}{p_end} {p 4 8 2} Now, we begin our monthly data aggregation. We start, by creating a monthly date by using the function {hi:mofd()} (please see {bf:{manhelp functions FN}} for more details). {p_end} {p 4 8 2}{stata "generate monthlydatest = mofd(datest2)"}{p_end} {p 4 8 2} Then, we use the command {hi:format} to change the newly generated variable {hi:"monthlydatest"} to a {hi:Stata} calendar month format and to a human readable format (please see {bf:{manhelp format D}} for more details). {p_end} {p 4 8 2}{stata `"format monthlydatest %tm"'}{p_end} {p 4 8 2} We sort the database by {hi:"administrative_area_level_1"}, {hi:"adminarealevel1iden"}, {hi:"iso_alpha_3"}, and {hi:"monthlydatest"}. {p_end} {p 4 8 2}{stata "sort administrative_area_level_1 adminarealevel1iden iso_alpha_3 monthlydatest"}{p_end} {p 4 8 2} We aggregate the database at a monthly frequency by making a dataset of summary statistics by using the command {hi:collapse} (please see {bf:{manhelp collapse D}} for more details). {p_end} {p 4 8 2}{stata "collapse (sum) confirmedactive deathsactive recoveredactive (median) population, by(administrative_area_level_1 adminarealevel1iden iso_alpha_3 monthlydatest)"}{p_end} {p 4 8 2} We sort the database by {hi:"administrative_area_level_1"} and {hi:"monthlydatest"}. {p_end} {p 4 8 2}{stata "sort administrative_area_level_1 monthlydatest"}{p_end} {p 4 8 2} We declare the data to be monthly panel data by using the command {hi:xtset} (please see {bf:{manhelp xtset XT}} for more details). {p_end} {p 4 8 2}{stata "xtset adminarealevel1iden monthlydatest, monthly"}{p_end} {p 4 8 2} We finish this block by saving all the changes we made to our dataset since we last downloaded it. {p_end} {p 4 8 2}{stata `"save "covid19level1monthly.dta", replace"'}{p_end} {p 4 8 2} {hi:BLOCK 5} {p_end} {p 4 8 2} In this block, we mainly show how to aggregate the data at a yearly frequency. {p_end} {p 4 8 2} We begin by downloading the data and saving them as we did previously. {p_end} {p 4 8 2}{stata `"xtstfetchcovid19, pathz("C:\mystatagraphs") saving("covid19level1yearly.dta", replace)"'}{p_end} {p 4 8 2} Then, we perform the usual data managements we did in block 2. Please, see block 2 for more details on these data managements. {p_end} {p 4 8 2}{stata `"generate datest1 = subinstr(date,"-","",.)"'}{p_end} {p 4 8 2}{stata `"generate datest2 = daily(datest1, "YMD")"'}{p_end} {p 4 8 2}{stata "format datest2 %td"}{p_end} {p 4 8 2}{stata "sort administrative_area_level_1 datest2"}{p_end} {p 4 8 2}{stata "egen adminarealevel1iden = group(administrative_area_level_1)"}{p_end} {p 4 8 2}{stata "xtset adminarealevel1iden datest2, daily"}{p_end} {p 4 8 2}{stata "generate double confirmedactive = D.confirmed"}{p_end} {p 4 8 2}{stata "generate double deathsactive = D.deaths"}{p_end} {p 4 8 2}{stata "generate double recoveredactive = D.recovered"}{p_end} {p 4 8 2} Now, we begin our yearly data aggregation. We start, by creating a yearly date by using the function {hi:yofd()} (please see {bf:{manhelp functions FN}} for more details). {p_end} {p 4 8 2}{stata "generate yearlydatest = yofd(datest2)"}{p_end} {p 4 8 2} Then, we use the command {hi:format} to change the newly generated variable {hi:"yearlydatest"} to a {hi:Stata} calendar year format and to a human readable format (please see {bf:{manhelp format D}} for more details). {p_end} {p 4 8 2}{stata `"format yearlydatest %ty"'}{p_end} {p 4 8 2} We sort the database by {hi:"administrative_area_level_1"}, {hi:"adminarealevel1iden"}, {hi:"iso_alpha_3"}, and {hi:"yearlydatest"}. {p_end} {p 4 8 2}{stata "sort administrative_area_level_1 adminarealevel1iden iso_alpha_3 yearlydatest"}{p_end} {p 4 8 2} We aggregate the database at a yearly frequency by making a dataset of summary statistics by using the command {hi:collapse} (please see {bf:{manhelp collapse D}} for more details). {p_end} {p 4 8 2}{stata "collapse (sum) confirmedactive deathsactive recoveredactive (median) population, by(administrative_area_level_1 adminarealevel1iden iso_alpha_3 yearlydatest)"}{p_end} {p 4 8 2} We sort the database by {hi:"administrative_area_level_1"} and {hi:"yearlydatest"}. {p_end} {p 4 8 2}{stata "sort administrative_area_level_1 yearlydatest"}{p_end} {p 4 8 2} We declare the data to be yearly panel data by using the command {hi:xtset} (please see {bf:{manhelp xtset XT}} for more details). {p_end} {p 4 8 2}{stata "xtset adminarealevel1iden yearlydatest, yearly"}{p_end} {p 4 8 2} We finish this block by saving all the changes we made to our dataset since we last downloaded it. {p_end} {p 4 8 2}{stata `"save "covid19level1yearly.dta", replace"'}{p_end} {p 4 8 2} {hi:BLOCK 6} {p_end} {p 4 8 2} In this block, we mainly show how to aggregate the data as a cross-sectional database. {p_end} {p 4 8 2} We begin by downloading the data and saving them as we did previously. {p_end} {p 4 8 2}{stata `"xtstfetchcovid19, pathz("C:\mystatagraphs") saving("covid19level1crosssec.dta", replace)"'}{p_end} {p 4 8 2} Then, we perform the usual data managements we did in block 2. Please, see block 2 for more details on these data managements. {p_end} {p 4 8 2}{stata `"generate datest1 = subinstr(date,"-","",.)"'}{p_end} {p 4 8 2}{stata `"generate datest2 = daily(datest1, "YMD")"'}{p_end} {p 4 8 2}{stata `"format datest2 %td"'}{p_end} {p 4 8 2}{stata "sort administrative_area_level_1 datest2"}{p_end} {p 4 8 2}{stata "egen adminarealevel1iden = group(administrative_area_level_1)"}{p_end} {p 4 8 2}{stata "xtset adminarealevel1iden datest2, daily"}{p_end} {p 4 8 2}{stata "generate double confirmedactive = D.confirmed"}{p_end} {p 4 8 2}{stata "generate double deathsactive = D.deaths"}{p_end} {p 4 8 2}{stata "generate double recoveredactive = D.recovered"}{p_end} {p 4 8 2} We sort the database by {hi:"administrative_area_level_1"}, {hi:"adminarealevel1iden"} and {hi:"iso_alpha_3"}. {p_end} {p 4 8 2}{stata "sort administrative_area_level_1 adminarealevel1iden iso_alpha_3"}{p_end} {p 4 8 2} We aggregate the data as a cross-sectional database by making a dataset of summary statistics by using the command {hi:collapse} (please see {bf:{manhelp collapse D}} for more details). {p_end} {p 4 8 2}{stata "collapse (sum) confirmedactive deathsactive recoveredactive (median) population, by(administrative_area_level_1 adminarealevel1iden iso_alpha_3)"}{p_end} {p 4 8 2} We sort the database by {hi:"administrative_area_level_1"}. {p_end} {p 4 8 2}{stata "sort administrative_area_level_1"}{p_end} {p 4 8 2} We finish this block by saving all the changes we made to our dataset since we last downloaded it. {p_end} {p 4 8 2}{stata `"save "covid19level1crosssec.dta", replace"'}{p_end} {p 4 8 2} {hi:BLOCK 7} {p_end} {p 4 8 2} In this block, we mainly show how to download states, regions and cantons level data (level 2). {p_end} {p 4 8 2} We begin by downloading daily state-level data (level 2) by specifying the option {hi:granulev(2)}. {p_end} {p 4 8 2}{stata `"xtstfetchcovid19, pathz("C:\mystatagraphs") granulev(2) saving("covid19level2daily.dta", replace)"'}{p_end} {p 4 8 2} The downloaded data do not come with labeled variables. But the variables names are self-descriptive. Meaning that, if you show their full names, you can infer what they are. Hence, we employ the {hi:describe} command with the {hi:fullnames} option to see the full names of the variables of the downloaded dataset. {p_end} {p 4 8 2}{stata "describe, fullnames"}{p_end} {p 4 8 2} We perform the usual data managements we did in block 2, commenting only the lines that are new. Please, see block 2 for more details on these data managements. {p_end} {p 4 8 2}{stata `"generate datest1 = subinstr(date,"-","",.)"'}{p_end} {p 4 8 2}{stata `"generate datest2 = daily(datest1, "YMD")"'}{p_end} {p 4 8 2}{stata `"format datest2 %td"'}{p_end} {p 4 8 2} We sort the database by {hi:"administrative_area_level_1"}, {hi:"administrative_area_level_2"} and {hi:"datest2"} because we have state-level data (level 2). {p_end} {p 4 8 2}{stata "sort administrative_area_level_1 administrative_area_level_2 datest2"}{p_end} {p 4 8 2} We group the {hi:"administrative_area_level_1"} and the {hi:"administrative_area_level_2"} variables together because we have state-level data (level 2) by using the command {hi:egen} (please see {bf:{manhelp egen D}} for more details). {p_end} {p 4 8 2}{stata "egen adminarealevel2iden = group(administrative_area_level_1 administrative_area_level_2)"}{p_end} {p 4 8 2} We declare the data to be daily panel data by using the command {hi:xtset} (please see {bf:{manhelp xtset XT}} for more details). {p_end} {p 4 8 2}{stata "xtset adminarealevel2iden datest2, daily"}{p_end} {p 4 8 2}{stata "generate double confirmedactive = D.confirmed"}{p_end} {p 4 8 2}{stata "generate double deathsactive = D.deaths"}{p_end} {p 4 8 2}{stata "generate double recoveredactive = D.recovered"}{p_end} {p 4 8 2} We finish this block by saving all the changes we made to our dataset since we last downloaded it. {p_end} {p 4 8 2}{stata `"save "covid19level2daily.dta", replace"'}{p_end} {p 4 8 2} {hi:BLOCK 8} {p_end} {p 4 8 2} In this last block, we mainly show how to download cities and municipalities level data (level 3). {p_end} {p 4 8 2} We begin by downloading daily city-level data (level 3) by specifying the option {hi:granulev(3)}. {p_end} {p 4 8 2}{stata `"xtstfetchcovid19, pathz("C:\mystatagraphs") granulev(3) saving("covid19level3daily.dta", replace)"'}{p_end} {p 4 8 2} The downloaded data do not come with labeled variables. But the variables names are self-descriptive. Meaning that, if you show their full names, you can infer what they are. Hence, we employ the {hi:describe} command with the {hi:fullnames} option to see the full names of the variables of the downloaded dataset. {p_end} {p 4 8 2}{stata "describe, fullnames"}{p_end} {p 4 8 2} We perform the usual data managements we did in block 2, commenting only the lines that are new. Please, see block 2 for more details on these data managements. {p_end} {p 4 8 2}{stata `"generate datest1 = subinstr(date,"-","",.)"'}{p_end} {p 4 8 2}{stata `"generate datest2 = daily(datest1, "YMD")"'}{p_end} {p 4 8 2}{stata `"format datest2 %td"'}{p_end} {p 4 8 2} We sort the database by {hi:"administrative_area_level_1"}, {hi:"administrative_area_level_2"}, {hi:"administrative_area_level_3"} and {hi:"datest2"} because we have city-level data (level 3). {p_end} {p 4 8 2}{stata "sort administrative_area_level_1 administrative_area_level_2 administrative_area_level_3 datest2"}{p_end} {p 4 8 2} We group the {hi:"administrative_area_level_1"}, the {hi:"administrative_area_level_2"} and the {hi:"administrative_area_level_3"} variables together because we have city-level data (level 3) by using the command {hi:egen} (please see {bf:{manhelp egen D}} for more details). {p_end} {p 4 8 2}{stata "egen adminarealevel3iden = group(administrative_area_level_1 administrative_area_level_2 administrative_area_level_3)"}{p_end} {p 4 8 2} We declare the data to be daily panel data by using the command {hi:xtset} (please see {bf:{manhelp xtset XT}} for more details). {p_end} {p 4 8 2}{stata "xtset adminarealevel3iden datest2, daily"}{p_end} {p 4 8 2}{stata "generate double confirmedactive = D.confirmed"}{p_end} {p 4 8 2}{stata "generate double deathsactive = D.deaths"}{p_end} {p 4 8 2}{stata "generate double recoveredactive = D.recovered"}{p_end} {p 4 8 2} We finish this block by saving all the changes we made to our dataset since we last downloaded it. {p_end} {p 4 8 2}{stata `"save "covid19level3daily.dta", replace"'}{p_end} {p 4 8 2} {hi:EPILOGUE} {p_end} {p 4 8 2} The instructions we have shown in this {hi:Examples} section, are just some of the few among the vast Data Management tools that can be used with the datasets that the command {cmd:xtstfetchcovid19} downloads. Hence, despite our efforts, we have only scratched the surface of what can be done with the command {cmd:xtstfetchcovid19}, the accompanying downloaded datasets, and the use of the command {cmd:xtstfetchcovid19} in conjunction with the thousands excellent and wonderful commands available from within {hi:Stata} for Data Management, Data Analysis, Statistics, Econometrics and Data Science. We leave these avenues of research to the reader/user to explore at her/his will ! {p_end} {title:References} {p 4 8 2}{hi:Guidotti Emanuele and Ardia David: 2020,} "COVID-19 Data Hub", {it:Journal of Open Source Software} {bf:5}(51), 2376. {p_end} {p 4 8 2}{hi: Guidotti Emanuele: 2022,} "A worldwide epidemiological database for COVID-19 at fine grained spatial resolution", {it:Scientific Data} {bf:9}(112). {p_end} {p 4 8 2}{hi:COVID-19 Data Hub}. Browsable at: {browse "https://covid19datahub.io"}. {p_end} {title:Citation} {pstd} The command {cmd:xtstfetchcovid19} is not an {hi:Official Stata} command. Like a paper, it is a free contribution to the research community. If you find the command {cmd:xtstfetchcovid19} and its accompanying datasets useful and utilize them in your works, please cite them like a paper as it is explained in the {hi:Suggested Citation} section of the {hi:IDEAS/RePEc} {it:webpage} of the command. Please, also cite {hi:Guidotti and Ardia (2020)}, {hi:Guidotti (2022)} and the {it:website} {hi:COVID-19 Data Hub} in your works.{it:Thank you infinitely, in advance, for doing all these gestures!} Please, note that citing this command {cmd:xtstfetchcovid19} and these references are a good way to disseminate their use and their discovery by other researchers. Doing these actions, could also, potentially, help us, as a community, to overcome {it:COVID-19} and to help in solving other challenging current problems and those that lie ahead in the future. {title:Acknowledgements} {pstd} I thank Emanuele Guidotti, David Ardia and all the Team of the {it:COVID-19 Data Hub} {it:website} for writing and making their programs, data, articles and {it:webpage} publicly available. This current {hi:Stata} package is based and inspired by their works. The usual disclaimers apply: all errors and imperfections in this package are mine and all comments are very welcome. {title:Author} {p 4}Diallo Ibrahima Amadou {p_end} {p 4 4}FERDI (Fondation pour les Etudes et Recherches sur le Developpement International) {p_end} {p 4}63 Boulevard Francois Mitterrand {p_end} {p 4}63000 Clermont-Ferrand {p_end} {p 4}France {p_end} {p 4}{hi:E-Mail}: {browse "mailto:zavren@gmail.com":zavren@gmail.com} {p_end} {title:Also see} {psee} Online: help for {bf:{manhelp describe D}}, {bf:{manhelp generate D}}, {bf:{manhelp egen D}}, {bf:{manhelp xtset XT}}, {bf:{manhelp save D}}, {bf:{manhelp functions FN}}, {bf:{manhelp format D}}, {bf:{manhelp tsvarlist U}}, {bf:{manhelp collapse D}}, {bf:{help probgenextval}} (if installed) {p_end}