library(gapminder)
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(ggplot2)
library(tidyverse)
## -- Attaching packages --------------------------------------- tidyverse 1.3.1 --
## v tibble  3.1.4     v purrr   0.3.4
## v tidyr   1.1.3     v stringr 1.4.0
## v readr   2.0.1     v forcats 0.5.1
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()
library(psych)
## 
## Attaching package: 'psych'
## The following objects are masked from 'package:ggplot2':
## 
##     %+%, alpha
#top and bottom 5 MLE for 1952
rawdata = filter(gapminder, year==1952)
sortdata = arrange(rawdata, lifeExp)
top5 = sortdata$lifeExp[138:142]
bot5 = sortdata$lifeExp[1:5]

df <- data.frame(c(top5,bot5))
#summary of top 5 countries
sumtop <- describe(top5, fast = TRUE )
sumtop
##    vars n  mean   sd   min   max range   se
## X1    1 5 71.99 0.74 70.78 72.67  1.89 0.33
#summary of bottom 5 countries
sumbot <- describe(bot5, fast = TRUE)
sumbot
##    vars n  mean   sd  min   max range  se
## X1    1 5 30.09 0.89 28.8 31.29  2.49 0.4
barplot(t(as.matrix(df)),
        main = 'Top 5 and Bottom 5 countries for MLE 1952',
        names.arg = c('Denmark', "Sweden", "Netherlands",'Iceland','Norway','Afghanistan','Gambia','Angola','Sierra Leone','Mozambique'), 
        xlab= 'Countries', 
        ylab = 'MLE',
        cex.names = 0.40,
        cex.axis = 0.7,
        beside = TRUE)

#2007 MLE
rawdata2 = filter(gapminder, year==2007)
sortdata2 = arrange(rawdata2, lifeExp)
top52 = sortdata2$lifeExp[138:142]
bot52 = sortdata2$lifeExp[1:5]

dff <- data.frame(c(top52,bot52))
#summary of top 5 countries
sumtopp <- describe(top52, fast = TRUE )
sumtopp
##    vars n mean   sd   min  max range   se
## X1    1 5 81.9 0.52 81.24 82.6  1.37 0.23
#summary of bottom 5 countries
sumbott <- describe(bot52, fast = TRUE)
sumbott
##    vars n  mean   sd   min   max range   se
## X1    1 5 41.85 1.27 39.61 42.59  2.98 0.57
barplot(t(as.matrix(dff)),
        main = 'Top 5 and Bottom 5 countries for MLE 2007',
        names.arg = c('Australia', "Switzerland", "Iceland",'Hong Kong','Japan','Swaziland','Mozambique','Zambia','Sierra Leone','Lesotho'), 
        xlab= 'Countries', 
        ylab = 'MLE',
        cex.names = 0.40,
        cex.axis = 0.7,
        beside = TRUE)

rawdata3 = filter(gapminder, year==2007)
sortdata3 = arrange(rawdata3, pop)
top53 = c(sortdata3$pop[138:142])
df4 <- data.frame(c(gapminder))

df4%>%
  group_by(year, continent) %>%
  mutate(meanMLE = mean(lifeExp)) %>%
  select(year, continent, meanMLE)
## # A tibble: 1,704 x 3
## # Groups:   year, continent [60]
##     year continent meanMLE
##    <int> <fct>       <dbl>
##  1  1952 Asia         46.3
##  2  1957 Asia         49.3
##  3  1962 Asia         51.6
##  4  1967 Asia         54.7
##  5  1972 Asia         57.3
##  6  1977 Asia         59.6
##  7  1982 Asia         62.6
##  8  1987 Asia         64.9
##  9  1992 Asia         66.5
## 10  1997 Asia         68.0
## # ... with 1,694 more rows