#Import covid CSV #Create covidData Dataframe covidData<-read.csv("covid.csv",header=TRUE,stringsAsFactors = FALSE) #Set NULL Values to 0 for ease of data handling covidData$new_deaths[is.na(covidData$new_deaths)]<-0 #Create a month colum without date covidData$Months<-substr(covidData$date,4,10) #Create location vector for us in summary data frame location<-c("United Kingdom","United Kingdom","United Kingdom","United Kingdom","United Kingdom","United Kingdom","United Kingdom","United Kingdom","United Kingdom","United Kingdom", "United Kingdom","United Kingdom","United Kingdom","United Kingdom","United Kingdom","United Kingdom","United Kingdom","United Kingdom","United Kingdom","United Kingdom", "United Kingdom","United Kingdom", "China","China","China","China","China","China","China","China","China","China", "China","China","China","China","China","China","China","China","China","China", "China","China") #Create Month vector for use in summary data frame months<-c(unique(substr(covidData$date,4,10)),unique(substr(covidData$date,4,10))) #Create a vector full of 0 values for use in data frame cases<-c(1:44) for (i in cases) {cases[i]<-0} #Create a vector full of 0 values for use in data frame deaths<-c(1:44) for (i in deaths) {deaths[i]<-0} #Create summary data frame to store barplot values summary<-data.frame(location=location,months=months,cases=cases,deaths=deaths,stringsAsFactors = FALSE) #loop through values and assign to summary data frame for (i in seq(1:length(covidData$new_cases))) { if (covidData[i,3]==summary[1,1] && covidData[i,66]==summary[1,2]) {summary[1,3]<-summary[1,3]+covidData$new_cases[i] summary[1,4]<-summary[1,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[2,1] && covidData[i,66]==summary[2,2]) {summary[2,3]<-summary[2,3]+covidData$new_cases[i] summary[2,4]<-summary[2,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[3,1] && covidData[i,66]==summary[3,2]) {summary[3,3]<-summary[3,3]+covidData$new_cases[i] summary[3,4]<-summary[3,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[4,1] && covidData[i,66]==summary[4,2]) {summary[4,3]<-summary[4,3]+covidData$new_cases[i] summary[4,4]<-summary[4,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[5,1] && covidData[i,66]==summary[5,2]) {summary[5,3]<-summary[5,3]+covidData$new_cases[i] summary[5,4]<-summary[5,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[6,1] && covidData[i,66]==summary[6,2]) {summary[6,3]<-summary[6,3]+covidData$new_cases[i] summary[6,4]<-summary[6,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[7,1] && covidData[i,66]==summary[7,2]) {summary[7,3]<-summary[7,3]+covidData$new_cases[i] summary[7,4]<-summary[7,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[8,1] && covidData[i,66]==summary[8,2]) {summary[8,3]<-summary[8,3]+covidData$new_cases[i] summary[8,4]<-summary[8,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[9,1] && covidData[i,66]==summary[9,2]) {summary[9,3]<-summary[9,3]+covidData$new_cases[i] summary[9,4]<-summary[9,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[10,1] && covidData[i,66]==summary[10,2]) {summary[10,3]<-summary[10,3]+covidData$new_cases[i] summary[10,4]<-summary[10,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[11,1] && covidData[i,66]==summary[11,2]) {summary[11,3]<-summary[11,3]+covidData$new_cases[i] summary[11,4]<-summary[11,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[12,1] && covidData[i,66]==summary[12,2]) {summary[12,3]<-summary[12,3]+covidData$new_cases[i] summary[12,4]<-summary[12,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[13,1] && covidData[i,66]==summary[13,2]) {summary[13,3]<-summary[13,3]+covidData$new_cases[i] summary[13,4]<-summary[13,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[14,1] && covidData[i,66]==summary[14,2]) {summary[14,3]<-summary[14,3]+covidData$new_cases[i] summary[14,4]<-summary[14,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[15,1] && covidData[i,66]==summary[15,2]) {summary[15,3]<-summary[15,3]+covidData$new_cases[i] summary[15,4]<-summary[15,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[16,1] && covidData[i,66]==summary[16,2]) {summary[16,3]<-summary[16,3]+covidData$new_cases[i] summary[16,4]<-summary[16,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[17,1] && covidData[i,66]==summary[17,2]) {summary[17,3]<-summary[17,3]+covidData$new_cases[i] summary[17,4]<-summary[17,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[18,1] && covidData[i,66]==summary[18,2]) {summary[18,3]<-summary[18,3]+covidData$new_cases[i] summary[18,4]<-summary[18,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[19,1] && covidData[i,66]==summary[19,2]) {summary[19,3]<-summary[19,3]+covidData$new_cases[i] summary[19,4]<-summary[19,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[20,1] && covidData[i,66]==summary[20,2]) {summary[20,3]<-summary[20,3]+covidData$new_cases[i] summary[20,4]<-summary[20,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[21,1] && covidData[i,66]==summary[21,2]) {summary[21,3]<-summary[21,3]+covidData$new_cases[i] summary[21,4]<-summary[21,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[22,1] && covidData[i,66]==summary[22,2]) {summary[22,3]<-summary[22,3]+covidData$new_cases[i] summary[22,4]<-summary[22,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[23,1] && covidData[i,66]==summary[23,2]) {summary[23,3]<-summary[23,3]+covidData$new_cases[i] summary[23,4]<-summary[23,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[24,1] && covidData[i,66]==summary[24,2]) {summary[24,3]<-summary[24,3]+covidData$new_cases[i] summary[24,4]<-summary[24,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[25,1] && covidData[i,66]==summary[25,2]) {summary[25,3]<-summary[25,3]+covidData$new_cases[i] summary[25,4]<-summary[25,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[26,1] && covidData[i,66]==summary[26,2]) {summary[26,3]<-summary[26,3]+covidData$new_cases[i] summary[26,4]<-summary[26,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[27,1] && covidData[i,66]==summary[27,2]) {summary[27,3]<-summary[27,3]+covidData$new_cases[i] summary[27,4]<-summary[27,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[28,1] && covidData[i,66]==summary[28,2]) {summary[28,3]<-summary[28,3]+covidData$new_cases[i] summary[28,4]<-summary[28,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[29,1] && covidData[i,66]==summary[29,2]) {summary[29,3]<-summary[29,3]+covidData$new_cases[i] summary[29,4]<-summary[29,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[30,1] && covidData[i,66]==summary[30,2]) {summary[30,3]<-summary[30,3]+covidData$new_cases[i] summary[30,4]<-summary[30,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[31,1] && covidData[i,66]==summary[31,2]) {summary[31,3]<-summary[31,3]+covidData$new_cases[i] summary[31,4]<-summary[31,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[32,1] && covidData[i,66]==summary[32,2]) {summary[32,3]<-summary[32,3]+covidData$new_cases[i] summary[32,4]<-summary[32,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[33,1] && covidData[i,66]==summary[33,2]) {summary[33,3]<-summary[33,3]+covidData$new_cases[i] summary[33,4]<-summary[33,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[34,1] && covidData[i,66]==summary[34,2]) {summary[34,3]<-summary[34,3]+covidData$new_cases[i] summary[34,4]<-summary[34,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[35,1] && covidData[i,66]==summary[35,2]) {summary[35,3]<-summary[35,3]+covidData$new_cases[i] summary[35,4]<-summary[35,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[36,1] && covidData[i,66]==summary[36,2]) {summary[36,3]<-summary[36,3]+covidData$new_cases[i] summary[36,4]<-summary[36,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[37,1] && covidData[i,66]==summary[37,2]) {summary[37,3]<-summary[37,3]+covidData$new_cases[i] summary[37,4]<-summary[37,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[38,1] && covidData[i,66]==summary[38,2]) {summary[38,3]<-summary[38,3]+covidData$new_cases[i] summary[38,4]<-summary[38,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[39,1] && covidData[i,66]==summary[39,2]) {summary[39,3]<-summary[39,3]+covidData$new_cases[i] summary[39,4]<-summary[39,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[40,1] && covidData[i,66]==summary[40,2]) {summary[40,3]<-summary[40,3]+covidData$new_cases[i] summary[40,4]<-summary[40,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[41,1] && covidData[i,66]==summary[41,2]) {summary[41,3]<-summary[41,3]+covidData$new_cases[i] summary[41,4]<-summary[41,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[42,1] && covidData[i,66]==summary[42,2]) {summary[42,3]<-summary[42,3]+covidData$new_cases[i] summary[42,4]<-summary[42,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[43,1] && covidData[i,66]==summary[43,2]) {summary[43,3]<-summary[43,3]+covidData$new_cases[i] summary[43,4]<-summary[43,4]+covidData$new_deaths[i]} if (covidData[i,3]==summary[44,1] && covidData[i,66]==summary[44,2]) {summary[44,3]<-summary[44,3]+covidData$new_cases[i] summary[44,4]<-summary[44,4]+covidData$new_deaths[i]} } #Plot chart of cases barplot(summary,height = summary$cases,beside = TRUE) #Creat function to calculate stats generateDescStats<-function(v) { #Initialise a blank vector to store values vDescStats<-NULL vDescStats<-c(vDescStats, mean(v, na.rm=TRUE)) #Use in built R Function vDescStats<-c(vDescStats, median(v, na.rm=TRUE)) #Use in built R Function vDescStats<-c(vDescStats, max(v, na.rm=TRUE)) #Use in built R Function vDescStats<-c(vDescStats, min(v, na.rm=TRUE)) #Use in built R Function vRange<-range(v, na.rm=TRUE) #Use in built R Function vDescStats<-c(vDescStats, vRange[2]-vRange[1]) vDescStats<-c(vDescStats,sd(v, na.rm = TRUE)) #Use in built R Function # Return vDescStats for use in other script areas return(vDescStats) } #Create blank covidSummary data frame for later population covidSummary<-data.frame(Mean=numeric(), Median=numeric(),Max=numeric(),Min=numeric(), Range=numeric(),StandardDev=numeric()) #Call generateDescStats function to create stats for expected months UKApril20<-generateDescStats(covidData$new_cases[62:91]) UKOct20<-generateDescStats(covidData$new_cases[245:275]) UKApril21<-generateDescStats(covidData$new_cases[427:456]) UKOct21<-generateDescStats(covidData$new_cases[610:640]) ChinaApril20<-generateDescStats(covidData$new_cases[711:740]) ChinaOct20<-generateDescStats(covidData$new_cases[894:924]) ChinaApril21<-generateDescStats(covidData$new_cases[1076:1105]) ChinaOct21<-generateDescStats(covidData$new_cases[1259:1289]) #Use rbind to combine all statistics into one data frame covidSummary<-rbind(covidSummary,UKApril20) covidSummary<-rbind(covidSummary,UKOct20) covidSummary<-rbind(covidSummary,UKApril21) covidSummary<-rbind(covidSummary,UKOct21) covidSummary<-rbind(covidSummary,ChinaApril20) covidSummary<-rbind(covidSummary,ChinaOct20) covidSummary<-rbind(covidSummary,ChinaApril21) covidSummary<-rbind(covidSummary,ChinaOct21) #Use cbind to assign a country and month to the existing data frame covidSummary<-cbind(c('UK','UK','UK','UK','China','China','China','China') ,c('April20','October20','April21','October21','April20','October20','April21','October21') ,covidSummary) #Rename columns to more reader friendly format colnames(covidSummary)<-c('Country','Month','Mean','Median','Max','Min','Range','StandardDev') #Use T-test to show significant difference between UK Oct 20 and UK Oct 21 #create vectors for Oct 20 and Oct 21 for use in analysis Oct20<-covidData$new_cases[245:275] Oct21<-covidData$new_cases[610:640] #Use Shapiro to see if normally distributed shapiro.test(Oct20) shapiro.test(Oct21) #As both results have a p value >0.05 we can assume data is normally distributed #H0-There is no significant difference between new cases in selected months #H1- There is a statisically significant difference between new cases t.test(Oct20,Oct21) #As p<0.05 we cannot reject the H0 and therefore there is no significant difference in new cases