From cb016adb54c9832f878c04cbbef708e2fbcb69f2 Mon Sep 17 00:00:00 2001 From: GitHub Actions Date: Mon, 29 Jan 2024 15:45:16 +0000 Subject: [PATCH] differences for PR #5 --- 01-intro-to-r.md | 381 ++++ 02-data-structures.md | 355 ++++ 03-explore-data.md | 429 +++++ 04-intro-to-visualisation.md | 251 +++ config.yaml | 6 +- data/gapminder_data.csv | 1705 +++++++++++++++++ ...tro-to-visualisation-rendered-ggplot-1.png | Bin 0 -> 4206 bytes ...o-visualisation-rendered-ggplot-call-1.png | Bin 0 -> 9513 bytes ...to-visualisation-rendered-ggplot-col-1.png | Bin 0 -> 8068 bytes ...-visualisation-rendered-ggplot-color-1.png | Bin 0 -> 8899 bytes ...visualisation-rendered-ggplot-colors-1.png | Bin 0 -> 23078 bytes ...isation-rendered-ggplot-colors-adapt-1.png | Bin 0 -> 23301 bytes ...alisation-rendered-ggplot-coord-flip-1.png | Bin 0 -> 8790 bytes ...visualisation-rendered-ggplot-titles-1.png | Bin 0 -> 10619 bytes fig/data-frame.svg | 269 +++ fig/relative_root.png | Bin 0 -> 22755 bytes fig/rstudio_project_files.jpeg | Bin 0 -> 41926 bytes md5sum.txt | 6 +- 18 files changed, 3400 insertions(+), 2 deletions(-) create mode 100644 01-intro-to-r.md create mode 100644 02-data-structures.md create mode 100644 03-explore-data.md create mode 100644 04-intro-to-visualisation.md create mode 100644 data/gapminder_data.csv create mode 100644 fig/04-intro-to-visualisation-rendered-ggplot-1.png create mode 100644 fig/04-intro-to-visualisation-rendered-ggplot-call-1.png create mode 100644 fig/04-intro-to-visualisation-rendered-ggplot-col-1.png create mode 100644 fig/04-intro-to-visualisation-rendered-ggplot-color-1.png create mode 100644 fig/04-intro-to-visualisation-rendered-ggplot-colors-1.png create mode 100644 fig/04-intro-to-visualisation-rendered-ggplot-colors-adapt-1.png create mode 100644 fig/04-intro-to-visualisation-rendered-ggplot-coord-flip-1.png create mode 100644 fig/04-intro-to-visualisation-rendered-ggplot-titles-1.png create mode 100644 fig/data-frame.svg create mode 100644 fig/relative_root.png create mode 100644 fig/rstudio_project_files.jpeg diff --git a/01-intro-to-r.md b/01-intro-to-r.md new file mode 100644 index 00000000..15fb0f33 --- /dev/null +++ b/01-intro-to-r.md @@ -0,0 +1,381 @@ +--- +title: 'Introduction to R and RStudio' +teaching: 45 +exercises: 5 +--- + + + +:::::::::::::::::::::::::::::::::::::: questions + +- How to find your way around RStudio? +- How to manage projects in R? +- How to install packages? +- How to interact with R? + +:::::::::::::::::::::::::::::::::::::::::::::::: + +::::::::::::::::::::::::::::::::::::: objectives + +After completing this episode, participants should be able to… + +- Create self-contained projects in RStudio +- Install additional packages using R code. +- Manage packages +- Define a variable +- Assign data to a variable +- Call functions + + +:::::::::::::::::::::::::::::::::::::::::::::::: + +# Project management in RStudio + +RStudio is an integrated development environment (IDE), which means +it provides a (much prettier) interface for the R software. For RStudio to work, +you need to have R installed on your computer. But R is integrated into RStudio, +so you never actually have to open R software. + +RStudio provides a useful feature: creating projects - +self-contained working space (i.e. working directory), to which R will refer to, +when looking for and saving files. +You can create projects in existing directories (folders) or create a new one. + +## Creating RStudio Project + +We’re going to create a project in RStudio in a new directory. +To create a project, go to: + +- `File` +- `New Project` +- `New directory` +- Place the project that you will easily find on your laptop and name the project `data-carpentry` +- `Create project` + + +## Organising working directory + +Creating an RStudio project is a good first step towards good project management. +However, most of the time it is a good idea to organize working space further. +This is one suggestion of how your R project can look like. +Let's go ahead and create the other folders: + +- `data/` - should be where your raw data is. **READ ONLY** +- `data_output/` - should be where your data output is saved **READ AND WRITE** +- `documents/` - all the documentation associated with the project (e.g. cookbook) +- `fig_output/` - your figure outputs go here **WRITE ONLY** +- `scripts/` - all your code goes here **READ AND WRITE** + +![R project organization](fig/rstudio_project_files.jpeg){alt="RStudio +project logo with five lines, each leading from the logo towards +one of the five boxes with texts: 'data/', 'data_output/', 'documents/', +'fig_output/', 'scripts/'"} + + +You can create these folders as you would any other folders on your laptop, but +R and RStudio offer handy ways to do it directly in your RStudio session. + +You can use RStudio interface to create a folder in your project by going to +lower-bottom pane, files tab, and clicking on Folder icon. +A dialog box will appear, +allowing you typing a name of a folder you want to create. + +An alternative solution is to create the folders using R command `dir.create()`. +In the console type: + + +```r +dir.create('data') +dir.create('data_output') +dir.create('documents') +dir.create('fig_output') +dir.create('scripts') +``` + +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: instructor + +In interest of time, focus on one way of creating the folders. You can showcase +an alternative method with just one example. + +Once you have finished, ask the participants if they have managed to create a +R Project and get the same folder structure. +To do this, use green and red stickers. + +This will become important, as we use relative paths together with `here` +package to read and write objects. + +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: + +## Two main ways to interact with R + +There are two main ways to interact with R through RStudio: + +- test and play environment within the interactive **R console** +- write and save an **R script (`.R` file)** + +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: callout + +When you open the RStudio or create the Rstudio project, you will see Console +window on the left by default. Once you create an R script, +it is placed in the upper left pane. +The Console is moved to the bottom left pane. + +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: + + +Each of the modes o interactions has its advantages and drawbacks. + +| | Console | R script| +|--------|---------|---------| +|**Pros**|Immediate results|Work lost once you close RStudio | +|**Cons**|Complete record of your work |Messy if you just want to print things out| + + + +## Creating a script + +During the workshop we will mostly use an `.R` script to have a full documentation +of what has been written. This way we will also be able to reproduce the results. +Let's create one now and save it in the `scripts` directory. + +- `File` +- `New File` +- `R Script` +- A new `Untitled` script will appear in the source pane. +- Save it using floppy disc icon. +- Select the `scripts/` folder as the file location +- Name the script `intro-to-r.R` + + +## Running the code + +Note that all code written in the script can be also executed at a spot in the +interactive console. +We will now learn how to run the code both in the console and the script. + +- In the Console you run the code by hitting Enter + at the end of the line +- In the R script there are two way to execute the code: + + You can use the `Run` button on the top right of the script window. + + Alternatively, you can use a keyboard shortcut: Ctrl + + Enter or Command + Return for MAC users. + +In both cases, the active line (the line where your cursor is placed) or a +highlighted snippet of code will be executed. A common source of error in scripts, +such as a previously created object not found, is code that has not been executed in +previous lines: make sure that all code has been executed as described above. +To run all lines before the active line, you can use the keyboard shortcut +Ctrl + Alt + B on Windows/Linux or +Command + option + B on Mac. + +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: callout + +### Escaping + +The console shows it's ready to get new commands with `>` sign. +It will show `+` sign if it still requires input for the command to be executed. + +Sometimes you don't know what is missing/ you change your mind and +want to run something else, or your code is running much too long +and you just want it to stop. +The way to do it is to press Esc. + +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: + +## Packages + +A great power of R lays in **packages: add-on sets of functions** that are build +by the community and once they go through a quality process they are available to +download from a repository called `CRAN`. They need to be explicitly activated. +Now, we will be using `tidyverse` package, +which is actually a collection of useful packages. +Another package that we will use is `here`. + +You were asked to install `tidyverse` package in the preparation for the workshop. +You need to install a package only once, so you won't have to do it again. +We will however need to install the `here` package. To do so, please go to your +script and type: + + +```r +install.packages('here') +``` + +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: callout + +If you are not sure if you have `tidyverse` packaged installed, you can check it +in the `Packages` tab in the bottom right pane. +In the search box start typing '`tidyverse`' and see if it appears in the list +of installed packages. If not, you will need to install it by writing in +the script: + + +```r +install.packages('tidyverse') +``` + +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: + + +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: callout + +### Commenting your code + +Now we have a bit of an issue with our script. As mentioned, the packages need to +be installed only once, but now, they will be installed each time we run the script, +which can take a lot of time if we're installing a large package like `tidyverse`. + +To keep a trace of you installing the packages, without executing it, you can use +a comment. In `R`, anything that is written after a has sign `#`, is ignored in +execution. Thanks to this feature, you can annotate your code. +Let's adapt our script by changing the first lines into comments: + + +```r +# install.packages('here') +# install.packages('tidyverse') +``` + +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: + + +Installing packages is not sufficient to work with them. You will need to load +them each time you want to use them. To do that you use `library()` command: + + +```r +# Load packages +library(tidyverse) +library(here) +``` + +## Handling paths + +You have created a project which is your working directory, +and a few sub-folders, that will help you organise your project better. +But now, each time you will save or retrieve a file from those folders, +you will need to specify the path from the folder you are in +(most likely the `scripts/` folder) to those files. + +That can become complicated and might cause a reproducibility problem, +if the person using your code (including future you) +is working in a different sub-folder. + + +We will use the `here()` package to tackle this issue. This package converts relative +paths from the root (main folder) of your project to absolute paths (the exact +location on your computer). For instance, instead of writing out the full path like +"C:/Users/YourName/Documents/r-geospatial-urban/data/file.csv" or +"~/Documents/r-geospatial-urban/data/file.csv", you can use the `here()` function +to create a path relative to your project's main directory. This makes your code +more portable and reproducible, as it doesn't depend on a specific location of +your project on your computer. + +It might be confusing, so let's see how it works. We will use the `here()` function +from the `here` package. In the console, we write: + + +```r +here() +here('data') +``` + +You all probably have something different printed out. And this is fine, because +`here` adapts to your computer's specific situation. + + +## Download files + +We still need to download data for the first part of the workshop. +You can do it with the function `download.file()`. +We will save it in the `data/` folder, where the **raw** data should go. +In the script, we will write: + + +```r +# Download the data +download.file('https://bit.ly/geospatial_data', + here('episodes', 'data','gapminder_data.csv')) +``` + +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: callout + +# Importing data into R + +Three of the most common ways of importing data in R are: + +- loading a package with pre-installed data; +- downloading data from a URL; +- reading a file from your computer. + +For larger datasets, database connections or API requests are also possible. We +will not cover these in the workshop. + +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: + + +# Introduction to R + +You can use R as calculator, you can for example write: + + +```r +1+100 +1*100 +1/100 +``` + + +## Variables and assignment + +However, what's more useful is that in R we can store values and +use them whenever we need to. +We using the assignment operator `<-`, like this: + + +```r +x <- 1/40 +``` + +Notice that assignment does not print a value. Instead, we've stored it for later +in something called a variable. `x` variable now contains the value `0.025`: + +```r +x +``` + +Look for the `Environment` tab in the upper right pane of RStudio. +You will see that `x` and its value have appeared in the list of Values. +Our variable `x` can be used in place of a number in any calculation that expects +a number, e.g. when calculating a square root: + + +```r +sqrt(x) +``` + +Variables can be also reassigned. This means that we can assign a new value to +variable `x`: + +```r +x <- 100 +x +``` + +You can use one variable to create a new one: + +```r +y <- sqrt(x) # you can use value stored in object x to create y +y +``` + + + +::::::::::::::::::::::::::::::::::::: keypoints + +- Use RStudio to write and run R programs. +- Use `install.packages()` to install packages. +- Use `library()` to load packages. + +:::::::::::::::::::::::::::::::::::::::::::::::: + diff --git a/02-data-structures.md b/02-data-structures.md new file mode 100644 index 00000000..ed242aa4 --- /dev/null +++ b/02-data-structures.md @@ -0,0 +1,355 @@ +--- +title: 'Data Structures' +teaching: 10 +exercises: 2 +--- + +:::::::::::::::::::::::::::::::::::::: questions + +- What are the basic data types in R? +- How do I represent categorical information in R? + +:::::::::::::::::::::::::::::::::::::::::::::::: + +::::::::::::::::::::::::::::::::::::: objectives + +After completing this episode, participants should be able to… + +- To be aware of the different types of data. +- To begin exploring data frames, and understand how they are related to vectors, factors and lists. +- To be able to ask questions from R about the type, class, and structure of an object. + +:::::::::::::::::::::::::::::::::::::::::::::::: + +## Vectors +So far we've looked on individual values. Now we will move to a data structure +called vectors. Vectors are arrays of values of the same data type. + +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: callout + +### Data types + +Data type refers to a type of information that is stored by a value. +It can be: + +- `numerical` (a number) +- `integer` (a number without information about decimal points) +- `logical` (a boolean - are values TRUE or FALSE?) +- `character` (a text/ string of characters) +- `complex` (a complex number) +- `raw` (raw bytes) + +We won't discuss `complex` or `raw` data type in the workshop. + +::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: + +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: callout + +### Data structures + +Vectors are the most common and basic data structure in R but you will come +across other data structures such as data frames, lists and matrices as well. +In short: + +- data.frames is a two-dimensional data structure in which columns are vectors of the same length that can have different data types. We will use this data structure in this lesson. +- lists can have an arbitrary structure and can mix data types; +- matrices are two-dimensional data structures containing elements of the same data type. + +For a more detailed description, see [Data Types and Structures](https://swcarpentry.github.io/r-novice-inflammation/13-supp-data-structures.html). + +Note that vector data in the geospatial context is different from vector data types. More about vector data in a [later lesson](../episodes/09-open-and-plot-vector-layers.Rmd)! + +::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: + +You can create a vector with a `c()` function. + + +```r +numeric_vector <- c(2, 6, 3) # vector of numbers - numeric data type. +numeric_vector +``` + +```{.output} +[1] 2 6 3 +``` + +```r +character_vector <- c('banana', 'apple', 'orange') # vector of words - or strings of characters- character data type +character_vector +``` + +```{.output} +[1] "banana" "apple" "orange" +``` + +```r +logical_vector <- c(TRUE, FALSE, TRUE) # vector of logical values (is something true or false?)- logical data type. +logical_vector +``` + +```{.output} +[1] TRUE FALSE TRUE +``` + +### Combining vectors + +The combine function, `c()`, will also append things to an existing vector: + + +```r +ab_vector <- c('a', 'b') +ab_vector +``` + +```{.output} +[1] "a" "b" +``` + +```r +abcd_vector <- c(ab_vector, 'c', 'd') +abcd_vector +``` + +```{.output} +[1] "a" "b" "c" "d" +``` + +### Missing values + +::::::::::::::::::::::::::::::::::::: challenge + +### Exercise + +Combine the `abcd_vector` with the `numeric_vector` in R. What is the data type of this new vector and why? + +:::::::::::::::::::::::: solution + +``` +combined_vector <- c(abcd_vector, numeric_vector) +combined_vector +``` +The combined vector is a character vector. Because vectors can only hold one data type and `abcd_vector` cannot be interpreted as numbers, the numbers in `numeric_vector` are _coerced_ into characters. + +::::::::::::::::::::::::::::::::: + +:::::::::::::::::::::::::::::::::::::::::::::::: + +A common operation you want to perform is to remove all the missing values +(in R denoted as `NA`). Let's have a look how to do it: + + +```r +with_na <- c(1, 2, 1, 1, NA, 3, NA ) # vector including missing value +``` + +First, let's try to calculate mean for the values in this vector + +```r +mean(with_na) # mean() function cannot interpret the missing values +``` + +```{.output} +[1] NA +``` + +```r +mean(with_na, na.rm = T) # You can add the argument na.rm=TRUE to calculate the result while ignoring the missing values. +``` + +```{.output} +[1] 1.6 +``` + +However, sometimes, you would like to have the `NA` +permanently removed from your vector. +For this you need to identify which elements of the vector hold missing values +with `is.na()` function. + + +```r +is.na(with_na) # This will produce a vector of logical values, stating if a statement 'This element of the vector is a missing value' is true or not +``` + +```{.output} +[1] FALSE FALSE FALSE FALSE TRUE FALSE TRUE +``` + +```r +!is.na(with_na) # # The ! operator means negation ,i.e. not is.na(with_na) +``` + +```{.output} +[1] TRUE TRUE TRUE TRUE FALSE TRUE FALSE +``` + +We know which elements in the vectors are `NA`. +Now we need to retrieve the subset of the `with_na` vector that is not `NA`. +Sub-setting in `R` is done with square brackets`[ ]`. + + +```r +without_na <- with_na[ !is.na(with_na) ] # this notation will return only the elements that have TRUE on their respective positions + +without_na +``` + +```{.output} +[1] 1 2 1 1 3 +``` + + +## Factors + +Another important data structure is called a **factor**. +Factors look like character data, but are used to represent categorical information. + +Factors create a structured relation between the different levels (values) of a +categorical variable, such as days of the week or responses to a question in a +survey. While factors look (and often behave) like character vectors, they are +actually treated as numbers by `R`, which is useful for computing summary +statistics about their distribution, running regression analysis, etc. +So you need to be very careful when treating them as strings. + +### Create factors +Once created, factors can only contain a pre-defined set of values, +known as levels. + + +```r +nordic_str <- c('Norway', 'Sweden', 'Norway', 'Denmark', 'Sweden') +nordic_str # regular character vectors printed out +``` + +```{.output} +[1] "Norway" "Sweden" "Norway" "Denmark" "Sweden" +``` + +```r +nordic_cat <- factor(nordic_str) # factor() function converts a vector to factor data type +nordic_cat # With factors, R prints out additional information - 'Levels' +``` + +```{.output} +[1] Norway Sweden Norway Denmark Sweden +Levels: Denmark Norway Sweden +``` + +### Inspect factors +R will treat each unique value from a factor vector as a **level** and (silently) +assign numerical values to it. +This can come in handy when performing statistical analysis. +You can inspect and adapt levels of the factor. + + +```r +levels(nordic_cat) # returns all levels of a factor vector. +``` + +```{.output} +[1] "Denmark" "Norway" "Sweden" +``` + +```r +nlevels(nordic_cat) # returns number of levels in a vector +``` + +```{.output} +[1] 3 +``` + +### Reorder levels +Note that `R` sorts the levels in the alphabetic order, +not in the order of occurrence in the vector. `R` assigns value of: + +- 1 to level 'Denmark', +- 2 to 'Norway' +- 3 to 'Sweden'. + +This is important as it can affect e.g. the order in which categories are +displayed in a plot or which category is taken as a baseline in a statistical model. + +You can reorder the categories using `factor()` function. This can be useful, for instance, to select a reference category (first level) in a regression model or for ordering legend items in a plot, rather than using the default category systematically (i.e. based on alphabetical order). + + +```r +nordic_cat <- factor(nordic_cat, levels = c('Norway' , 'Denmark', 'Sweden')) # now Norway should be the first category, Denmark second and Sweden third + +nordic_cat +``` + +```{.output} +[1] Norway Sweden Norway Denmark Sweden +Levels: Norway Denmark Sweden +``` + + +:::::::::::::::::::::::::::::::::::::::::::::::::::::: callout +There is more than one way to reorder factors. Later in the lesson, +we will use `fct_relevel()` function from `forcats` package to do the reordering. + + +```r +# nordic_cat <- fct_relevel(nordic_cat, 'Norway' , 'Denmark', 'Sweden') # now Norway should be the first category, Denmark second and Sweden third + +nordic_cat +``` + +```{.output} +[1] Norway Sweden Norway Denmark Sweden +Levels: Norway Denmark Sweden +``` +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: + + +You can also inspect vectors with `str()` function. In factor vectors, +it shows the underlying values of each category. +You can also see the structure in the environment tab of RStudio. + + +```r +str(nordic_cat) +``` + +```{.output} + Factor w/ 3 levels "Norway","Denmark",..: 1 3 1 2 3 +``` + +:::::::::::::::::::::::::::::::::::::::::::::::::::: callout + +### Note of caution + +Remember that once created, factors can only contain a pre-defined set of values, +known as levels. It means that whenever you try to add something to the factor +outside of this set, it will become an unknown/missing value detonated by +`R` as `NA`. + + + +```r +nordic_str +``` + +```{.output} +[1] "Norway" "Sweden" "Norway" "Denmark" "Sweden" +``` + +```r +nordic_cat2 <- factor(nordic_str, levels = c('Norway', 'Denmark')) +nordic_cat2 # since we have not included Sweden in the list of factor levels, it has become NA. +``` + +```{.output} +[1] Norway Norway Denmark +Levels: Norway Denmark +``` +:::::::::::::::::::::::::::::::::::::::::::::::::::: + + + +::::::::::::::::::::::::::::::::::::: keypoints + +- The mostly used basic data types in R are `numeric`, `integer`, `logical`, and `character` +- Use factors to represent categories in R. + +:::::::::::::::::::::::::::::::::::::::::::::::: + diff --git a/03-explore-data.md b/03-explore-data.md new file mode 100644 index 00000000..d492c315 --- /dev/null +++ b/03-explore-data.md @@ -0,0 +1,429 @@ +--- +title: 'Exploring Data Frames & Data frame Manipulation with dplyr ' +teaching: 10 +exercises: 2 +--- + + + +:::::::::::::::::::::::::::::::::::::: questions + +- What is a data frame? +- How can I read data in R? +- How can I get basic summary information about my data set? +- How can I select specific rows and/or columns from a data frame? +- How can I combine multiple commands into a single command? +- How can I create new columns or remove existing columns from a data frame? + +:::::::::::::::::::::::::::::::::::::::::::::::: + +::::::::::::::::::::::::::::::::::::: objectives + +After completing this episode, participants should be able to… + +- Describe what a data frame is. +- Load external data from a .csv file into a data frame. +- Summarize the contents of a data frame. +- Select certain columns in a data frame with the dplyr function select. +- Select certain rows in a data frame according to filtering conditions with the dplyr function filter. +- Link the output of one dplyr function to the input of another function with the ‘pipe’ operator %>%. +- Add new columns to a data frame that are functions of existing columns with mutate. +- Use the split-apply-combine concept for data analysis. +- Use summarize, group_by, and count to split a data frame into groups of observations, apply a summary statistics for each group, and then combine the results. + +:::::::::::::::::::::::::::::::::::::::::::::::: + + +# [Exploring Data frames](https://datacarpentry.org/r-intro-geospatial/04-data-structures-part2/index.html) + +Now we turn to the bread-and-butter of working with `R`: working with tabular data. In `R` data are stored in a data structure called **data frames**. + +A data frame is a representation of data in the format of a **table** where the columns are **vectors** that all have the **same length**. + + +Because columns are vectors, each column must contain a **single type of data** (e.g., characters, numeric, factors). +For example, here is a figure depicting a data frame comprising a numeric, a character, and a logical vector. + +![](fig/data-frame.svg) +
*Source*:[Data Carpentry R for Social Scientists ](https://datacarpentry.org/r-socialsci/02-starting-with-data/index.html#what-are-data-frames-and-tibbles) + + +## Reading data + +`read.csv()` is a function used to read coma separated data files (`.csv` format)). There are other functions for files separated with other delimiters. +We're gonna read in the `gapminder` data set with information about countries' size, GDP and average life expectancy in different years. + + +```r +gapminder <- read_csv("data/gapminder_data.csv") +``` + +## Exploring dataset +Let’s investigate the `gapminder` data frame a bit; the first thing we should always do is check out what the data looks like. + +It is important to see if all the variables (columns) have the data type that we require. For instance, a column might have numbers stored as characters, which would not allow us to make calculations with those numbers. + + +```r +str(gapminder) +``` + +```{.output} +spc_tbl_ [1,704 × 6] (S3: spec_tbl_df/tbl_df/tbl/data.frame) + $ country : chr [1:1704] "Afghanistan" "Afghanistan" "Afghanistan" "Afghanistan" ... + $ year : num [1:1704] 1952 1957 1962 1967 1972 ... + $ pop : num [1:1704] 8425333 9240934 10267083 11537966 13079460 ... + $ continent: chr [1:1704] "Asia" "Asia" "Asia" "Asia" ... + $ lifeExp : num [1:1704] 28.8 30.3 32 34 36.1 ... + $ gdpPercap: num [1:1704] 779 821 853 836 740 ... + - attr(*, "spec")= + .. cols( + .. country = col_character(), + .. year = col_double(), + .. pop = col_double(), + .. continent = col_character(), + .. lifeExp = col_double(), + .. gdpPercap = col_double() + .. ) + - attr(*, "problems")= +``` + +We can see that the `gapminder` object is a data.frame with 1704 observations (rows) and 6 variables (columns). + +In each line after a `$` sign, we see the name of each column, its type and first few values. + + +### First look at the dataset +There are multiple ways to explore a data set. Here are just a few examples: + + + +```r +head(gapminder) # see first 6 rows of the data set +``` + +```{.output} +# A tibble: 6 × 6 + country year pop continent lifeExp gdpPercap + +1 Afghanistan 1952 8425333 Asia 28.8 779. +2 Afghanistan 1957 9240934 Asia 30.3 821. +3 Afghanistan 1962 10267083 Asia 32.0 853. +4 Afghanistan 1967 11537966 Asia 34.0 836. +5 Afghanistan 1972 13079460 Asia 36.1 740. +6 Afghanistan 1977 14880372 Asia 38.4 786. +``` + +```r +summary(gapminder) # gives basic statistical information about each column. Information format differes by data type. +``` + +```{.output} + country year pop continent + Length:1704 Min. :1952 Min. :6.001e+04 Length:1704 + Class :character 1st Qu.:1966 1st Qu.:2.794e+06 Class :character + Mode :character Median :1980 Median :7.024e+06 Mode :character + Mean :1980 Mean :2.960e+07 + 3rd Qu.:1993 3rd Qu.:1.959e+07 + Max. :2007 Max. :1.319e+09 + lifeExp gdpPercap + Min. :23.60 Min. : 241.2 + 1st Qu.:48.20 1st Qu.: 1202.1 + Median :60.71 Median : 3531.8 + Mean :59.47 Mean : 7215.3 + 3rd Qu.:70.85 3rd Qu.: 9325.5 + Max. :82.60 Max. :113523.1 +``` + +```r +nrow(gapminder) # returns number of rows in a dataset +``` + +```{.output} +[1] 1704 +``` + +```r +ncol(gapminder) # returns number of columns in a dataset +``` + +```{.output} +[1] 6 +``` + +### Dollar sign ($) + +When you're analyzing a data set, you often need to access its specific columns. + +One handy way to access a column is using it's name and a dollar sign `$`: + +```r +country_vec <- gapminder$country # Notation means: From dataset gapminder, give me column country. You can see that the column accessed in this way is just a vector of characters. + +head(country_vec) +``` + +```{.output} +[1] "Afghanistan" "Afghanistan" "Afghanistan" "Afghanistan" "Afghanistan" +[6] "Afghanistan" +``` +Note that the calling a column with a `$` sign will return a *vector*, it's not a data frame anymore. + + +# [Data frame Manipulation with dplyr](https://datacarpentry.org/r-intro-geospatial/06-dplyr/index.html) + +## Select +Let's start manipulating the data. + +First, we will adapt our data set, by keeping only the columns we're interested in, using the `select()` function from the `dplyr` package: + + +```r +year_country_gdp <- select(gapminder, year, country, gdpPercap) + +head(year_country_gdp) +``` + +```{.output} +# A tibble: 6 × 3 + year country gdpPercap + +1 1952 Afghanistan 779. +2 1957 Afghanistan 821. +3 1962 Afghanistan 853. +4 1967 Afghanistan 836. +5 1972 Afghanistan 740. +6 1977 Afghanistan 786. +``` + +## Pipe +Now, this is not the most common notation when working with `dplyr` package. `dplyr` offers an operator `%>%` called a pipe, which allows you build up very complicated commands in a readable way. + + +In newer installation of `R` you can also find a notation `|>` . This pipe works in a similar way. The main difference is that you don't need to load any packages to have it available. + + +The `select()` statement with pipe would look like that: + + +```r +year_country_gdp <- gapminder %>% + select(year,country,gdpPercap) + +head(year_country_gdp) +``` + +```{.output} +# A tibble: 6 × 3 + year country gdpPercap + +1 1952 Afghanistan 779. +2 1957 Afghanistan 821. +3 1962 Afghanistan 853. +4 1967 Afghanistan 836. +5 1972 Afghanistan 740. +6 1977 Afghanistan 786. +``` + +First we define data set, then - with the use of pipe we pass it on to the `select()` function. This way we can chain multiple functions together, which we will be doing now. + +## Filter + +We already know how to select only the needed columns. But now, we also want to filter the rows of our data set via certain conditions with `filter()` function. Instead of doing it in separate steps, we can do it all together. + +In the `gapminder` data set, we want to see the results from outside of Europe for the 21st century. + +```r +year_country_gdp_euro <- gapminder %>% + filter(continent != "Europe" & year >= 2000) %>% # & operator (AND) - both conditions must be met + select(year, country, gdpPercap) + +head(year_country_gdp_euro) +``` + +```{.output} +# A tibble: 6 × 3 + year country gdpPercap + +1 2002 Afghanistan 727. +2 2007 Afghanistan 975. +3 2002 Algeria 5288. +4 2007 Algeria 6223. +5 2002 Angola 2773. +6 2007 Angola 4797. +``` + +### Exercise 1 + +
+Challenge +Write a single command (which can span multiple lines and includes pipes) that will produce a data frame that has the values for life expectancy, country and year, only for Eurasia. How many rows does your data frame have and why? + + +Solution + +
+ + + +```{.r .bg-info} +year_country_gdp_eurasia <- gapminder %>% + filter(continent == "Europe" | continent == "Asia") %>% # | operator (OR) - one of the conditions must be met + select(year, country, gdpPercap) + +nrow(year_country_gdp_eurasia) +``` + +```{.output} +[1] 756 +``` + + + +## Group and summarize +So far, we have provided summary statistics on the whole dataset, selected columns, and filtered the observations. But often instead of doing that, we would like to know statistics about all of the continents, presented by group. + + +```r +gapminder %>% # select the dataset + group_by(continent) %>% # group by continent + summarize(avg_gdpPercap = mean(gdpPercap)) # summarize function creates statistics for the data set +``` + +```{.output} +# A tibble: 5 × 2 + continent avg_gdpPercap + +1 Africa 2194. +2 Americas 7136. +3 Asia 7902. +4 Europe 14469. +5 Oceania 18622. +``` + +### Exercise 2 +
+Challenge +Calculate the average life expectancy per country. Which country has the longest average life expectancy and which has the shortest average life expectancy? + +Hint Use `max()` and `min()` functions to find minimum and maximum. + +Solution + +
+ + + +```{.r .bg-info} +gapminder %>% + group_by(country) %>% + summarize(avg_lifeExp=mean(lifeExp)) %>% + filter(avg_lifeExp == min(avg_lifeExp) | avg_lifeExp == max(avg_lifeExp)) +``` + +```{.output} +# A tibble: 2 × 2 + country avg_lifeExp + +1 Iceland 76.5 +2 Sierra Leone 36.8 +``` + +### Multiple groups and summary variables +You can also group by multiple columns: + + +```r +gapminder %>% + group_by(continent, year) %>% + summarize(avg_gdpPercap = mean(gdpPercap)) +``` + +```{.output} +# A tibble: 60 × 3 +# Groups: continent [5] + continent year avg_gdpPercap + + 1 Africa 1952 1253. + 2 Africa 1957 1385. + 3 Africa 1962 1598. + 4 Africa 1967 2050. + 5 Africa 1972 2340. + 6 Africa 1977 2586. + 7 Africa 1982 2482. + 8 Africa 1987 2283. + 9 Africa 1992 2282. +10 Africa 1997 2379. +# ℹ 50 more rows +``` + +On top of this, you can also make multiple summaries of those groups: + +```r +gdp_pop_bycontinents_byyear <- gapminder %>% + group_by(continent,year) %>% + summarize( + avg_gdpPercap = mean(gdpPercap), + sd_gdpPercap = sd(gdpPercap), + avg_pop = mean(pop), + sd_pop = sd(pop), + n_obs = n() + ) +``` + +## Frequencies + +If you need only a number of observations per group, you can use the `count()` function + +```r +gapminder %>% + group_by(continent) %>% + count() +``` + +```{.output} +# A tibble: 5 × 2 +# Groups: continent [5] + continent n + +1 Africa 624 +2 Americas 300 +3 Asia 396 +4 Europe 360 +5 Oceania 24 +``` + + +## Mutate + +Frequently you’ll want to create new columns based on the values in existing columns. For example, instead of only having the GDP per capita, we might want to create a new GDP variable and convert its units into Billions. For this, we’ll use `mutate()`. + + +```r +gapminder_gdp <- gapminder %>% + mutate(gdpBillion = gdpPercap*pop/10^9) + +head(gapminder_gdp) +``` + +```{.output} +# A tibble: 6 × 7 + country year pop continent lifeExp gdpPercap gdpBillion + +1 Afghanistan 1952 8425333 Asia 28.8 779. 6.57 +2 Afghanistan 1957 9240934 Asia 30.3 821. 7.59 +3 Afghanistan 1962 10267083 Asia 32.0 853. 8.76 +4 Afghanistan 1967 11537966 Asia 34.0 836. 9.65 +5 Afghanistan 1972 13079460 Asia 36.1 740. 9.68 +6 Afghanistan 1977 14880372 Asia 38.4 786. 11.7 +``` + + +::::::::::::::::::::::::::::::::::::: keypoints + +- We can use the `select()` and `filter()` functions to select certain columns in a data frame and to subset it based a specific conditions. +- With `mutate()`, we can create new columns in a data frame with values based on existing columns. +- By combining `group_by()` and `summarize()` in a pipe (`%>%`) chain, we can generate summary statistics for each group in a data frame. + +:::::::::::::::::::::::::::::::::::::::::::::::: + diff --git a/04-intro-to-visualisation.md b/04-intro-to-visualisation.md new file mode 100644 index 00000000..a41dec45 --- /dev/null +++ b/04-intro-to-visualisation.md @@ -0,0 +1,251 @@ +--- +title: "Introduction to visualisation" +teaching: 10 # to be updated by Jerome & Kyri +exercises: 2 # to be updated by Jerome & Kyri +--- + + + +:::::::::::::::::::::::::::::::::::::: questions + +- How can I create a basic plot in R? +- How can I add features to a plot? +- How can I get basic summary information about my data set? +- How can I include addition information via a colours palette. +- How can I find more information about a function and its arguments? +- How can I create new columns or remove existing columns from a data frame? + +:::::::::::::::::::::::::::::::::::::::::::::::: + +::::::::::::::::::::::::::::::::::::: objectives + +After completing this episode, participants should be able to… + +- Generate plots to visualise data with `ggplot2`. +- Add plot layers to incrementally build a more complex plot. +- Use the `fill` argument for colouring surfaces, and modify colours with the viridis or scale_manual packages. +- Explore the help documentation. +- Save and format your plot via the `ggsave()` function. + +:::::::::::::::::::::::::::::::::::::::::::::::: + +# [Introduction to Visualisation](https://datacarpentry.org/r-intro-geospatial/07-plot-ggplot2/index.html) + +The package `ggplot2` is a powerful plotting system. We will start with an introduction of key +features of `ggplot2`. In the following parts of this workshop, you will +use this package to visualize geospatial data. `gg` stands for grammar +of graphics, the idea that three components are needed to create a graph: + +- data, +- aesthetics - a coordinate system on which we map the data +(what is represented on x axis, what on y axis), and +- geometries - visual representation of the data (points, bars, etc.) + +Fun part about `ggplot2` is that you can add layers to +the plot to provide more information and to make it more beautiful. + +First, lets plot the distribution of life expectancy in the `gapminder` dataset: + + +```r + ggplot(data = gapminder, aes(x = lifeExp) ) + # aesthetics layer + geom_histogram() # geometry layer +``` + + + +You can see that in `ggplot` you use `+` as a pipe, to add layers. +Within the `ggplot()` call, it is the only pipe that will work. But, it is +possible to chain operations on a data set with a pipe that we have +already learned: `%>%` ( or `|>`) and follow them by ggplot syntax. + +Let's create another plot, this time only on a subset of observations: + + +```r +gapminder %>% # we select a data set + filter(year == 2007 & + continent == 'Americas') %>% # and filter it to keep only one year and one continent + ggplot(aes(x = country, y = gdpPercap)) + # the x and y axes represent values of columns + geom_col() # we select a column graph as a geometry +``` + + + +Now, you can iteratively improve how the plot looks like. For example, +you might want to flip it, to better display the labels. + + +```r +gapminder %>% + filter(year == 2007, + continent == 'Americas') %>% + ggplot(aes(x = country, y = gdpPercap)) + + geom_col()+ + coord_flip() # flip axes +``` + + + +One thing you might want to change here is the order in which countries +are displayed. It would be easier to compare GDP per capita, if they +were showed in order. To do that, we need to reorder factor levels (you +remember, we've already done this before). + +Now the order of the levels will depend on another variable - GDP per +capita. + + +```r +gapminder %>% + filter(year == 2007, + continent == 'Americas') %>% + mutate(country = fct_reorder(country, gdpPercap )) %>% # reorder factor levels + ggplot(aes(x = country , y = gdpPercap)) + + geom_col() + + coord_flip() +``` + + + +Let's make things more colourful - let's represent the average life +expectancy of a country by colour + + +```r +gapminder %>% + filter(year == 2007, + continent == 'Americas') %>% + mutate(country = fct_reorder(country, gdpPercap )) %>% + ggplot(aes(x = country, y = gdpPercap, fill = lifeExp )) + # fill argument for colouring surfaces, colour for points and lines + geom_col()+ + coord_flip() +``` + + + +We can also adapt the colour scale. Common choice that is used for its +readability and colorblind-proofness are the palettes available in the +`viridis` package. + + +```r +gapminder %>% + filter(year == 2007, + continent == 'Americas') %>% + mutate(country = fct_reorder(country, gdpPercap )) %>% + ggplot(aes(x = country, y = gdpPercap, fill = lifeExp )) + + geom_col()+ + coord_flip()+ + scale_fill_viridis_c() # _c stands for continuous scale +``` + + + +Maybe we don't need that much information about the life expectancy. We +only want to know if it's below or above average. We will make use of the `if_else()` function inside `mutate()` to create a new column `lifeExpCat` with the value `high` if life expectancy is above average and `low` otherwise. Note the usage of the `if_else()` function: `if_else(, , )`. + + +```r +p <- # this time let's save the plot in an object + gapminder %>% + filter(year == 2007 & + continent == 'Americas') %>% + mutate(country = fct_reorder(country, gdpPercap ), + lifeExpCat = if_else(lifeExp >= mean(lifeExp), 'high', 'low')) %>% + ggplot(aes(x = country, y = gdpPercap, fill = lifeExpCat)) + + geom_col()+ + coord_flip()+ + scale_fill_manual(values = c('light blue', 'orange')) # customize the colours of the fill aesthetic +``` + +Since we saved a plot as an object, nothing has been printed out. Just +like with any other object in `R`, if you want to see it, you need to +call it. + + +```r +p +``` + + + +Now we can make use of the saved object and add things to it. + +Let's also give it a title and name the axes: + + +```r +p <- + p + + ggtitle('GDP per capita in Americas', subtitle = 'Year 2007') + + xlab('Country')+ + ylab('GDP per capita') + +p +``` + + + +# [Writing data](https://datacarpentry.org/r-intro-geospatial/08-writing-data/index.html) + +## Saving the plot + +Once we are happy with our plot we can save it in a format of our +choice. Remember to save it in the dedicated folder. + + +```r +ggsave(plot = p, + filename = here('fig_output','plot_americas_2007.pdf')) # By default, ggsave() saves the last displayed plot, but you can also explicitly name the plot you want to save +``` + +```{.error} +Error in grDevices::pdf(file = filename, ..., version = version): cannot open file '/home/runner/work/r-geospatial-urban/r-geospatial-urban/site/built/fig_output/plot_americas_2007.pdf' +``` + +### Using help documentation + +My saved plot is not very readable. We can see why it happened by +exploring the help documentation. We can do that by writing directly in +the console: + + +```r +?ggsave +``` + +We can read that it uses the "size of the current graphics device". That +would explain why our saved plots look slightly different. Feel free to +explore the documentation to see how to adapt the size e.g. by adapting +`width`, `height` and `units` parameter. + +## Saving the data + +Another output of your work you want to save is a cleaned data set. In +your analysis, you can then load directly that data set. Let's say we want to +save the data only for Americas: + + +```r +gapminder_amr_2007 <- gapminder %>% + filter(year == 2007 & continent == 'Americas') %>% + mutate(country_reordered = fct_reorder(country, gdpPercap ), + lifeExpCat = if_else(lifeExp >= mean(lifeExp), 'high', 'low')) + +write.csv(gapminder_amr_2007, here('data_output', 'gapminder_americas_2007.csv'), row.names=FALSE) +``` + +```{.error} +Error in file(file, ifelse(append, "a", "w")): cannot open the connection +``` + +::::::::::::::::::::::::::::::::::::: keypoints + +- With `ggplot2`, we use the `+` operator to combine plot layers and incrementally build a more complex plot. +- In the aesthetics (`aes()`), we can assign variables to the x and y axes and use the `fill` argument for colouring surfaces. +- With `scale_fill_viridis_c()` and `scale_fill_manual()` we can assign new colours to our plot. +- To open the help documentation for a function, we run the name of the function preceded by the `?` sign. + +:::::::::::::::::::::::::::::::::::::::::::::::: + diff --git a/config.yaml b/config.yaml index bd61fc52..b37c5adf 100644 --- a/config.yaml +++ b/config.yaml @@ -11,7 +11,7 @@ carpentry: 'incubator' # Overall title for pages. -title: 'Geospatial Data Carpentry with R for Urbanists' +title: 'Geospatial Data Carpentry for Urbanism' # Date the lesson was created (YYYY-MM-DD, this is empty by default) created: @@ -59,6 +59,10 @@ contact: 'c.forgaci@tudelft.nl' # Order of episodes in your lesson episodes: +- 01-intro-to-r.Rmd +- 02-data-structures.Rmd +- 03-explore-data.Rmd +- 04-intro-to-visualisation.Rmd - 09-open-and-plot-vector-layers.Rmd - 10-explore-and-plot-by-vector-layer-attributes.Rmd - 11-plot-multiple-shape-files.Rmd diff --git a/data/gapminder_data.csv b/data/gapminder_data.csv new file mode 100644 index 00000000..661ddefc --- /dev/null +++ b/data/gapminder_data.csv @@ -0,0 +1,1705 @@ +country,year,pop,continent,lifeExp,gdpPercap +Afghanistan,1952,8425333,Asia,28.801,779.4453145 +Afghanistan,1957,9240934,Asia,30.332,820.8530296 +Afghanistan,1962,10267083,Asia,31.997,853.10071 +Afghanistan,1967,11537966,Asia,34.02,836.1971382 +Afghanistan,1972,13079460,Asia,36.088,739.9811058 +Afghanistan,1977,14880372,Asia,38.438,786.11336 +Afghanistan,1982,12881816,Asia,39.854,978.0114388 +Afghanistan,1987,13867957,Asia,40.822,852.3959448 +Afghanistan,1992,16317921,Asia,41.674,649.3413952 +Afghanistan,1997,22227415,Asia,41.763,635.341351 +Afghanistan,2002,25268405,Asia,42.129,726.7340548 +Afghanistan,2007,31889923,Asia,43.828,974.5803384 +Albania,1952,1282697,Europe,55.23,1601.056136 +Albania,1957,1476505,Europe,59.28,1942.284244 +Albania,1962,1728137,Europe,64.82,2312.888958 +Albania,1967,1984060,Europe,66.22,2760.196931 +Albania,1972,2263554,Europe,67.69,3313.422188 +Albania,1977,2509048,Europe,68.93,3533.00391 +Albania,1982,2780097,Europe,70.42,3630.880722 +Albania,1987,3075321,Europe,72,3738.932735 +Albania,1992,3326498,Europe,71.581,2497.437901 +Albania,1997,3428038,Europe,72.95,3193.054604 +Albania,2002,3508512,Europe,75.651,4604.211737 +Albania,2007,3600523,Europe,76.423,5937.029526 +Algeria,1952,9279525,Africa,43.077,2449.008185 +Algeria,1957,10270856,Africa,45.685,3013.976023 +Algeria,1962,11000948,Africa,48.303,2550.81688 +Algeria,1967,12760499,Africa,51.407,3246.991771 +Algeria,1972,14760787,Africa,54.518,4182.663766 +Algeria,1977,17152804,Africa,58.014,4910.416756 +Algeria,1982,20033753,Africa,61.368,5745.160213 +Algeria,1987,23254956,Africa,65.799,5681.358539 +Algeria,1992,26298373,Africa,67.744,5023.216647 +Algeria,1997,29072015,Africa,69.152,4797.295051 +Algeria,2002,31287142,Africa,70.994,5288.040382 +Algeria,2007,33333216,Africa,72.301,6223.367465 +Angola,1952,4232095,Africa,30.015,3520.610273 +Angola,1957,4561361,Africa,31.999,3827.940465 +Angola,1962,4826015,Africa,34,4269.276742 +Angola,1967,5247469,Africa,35.985,5522.776375 +Angola,1972,5894858,Africa,37.928,5473.288005 +Angola,1977,6162675,Africa,39.483,3008.647355 +Angola,1982,7016384,Africa,39.942,2756.953672 +Angola,1987,7874230,Africa,39.906,2430.208311 +Angola,1992,8735988,Africa,40.647,2627.845685 +Angola,1997,9875024,Africa,40.963,2277.140884 +Angola,2002,10866106,Africa,41.003,2773.287312 +Angola,2007,12420476,Africa,42.731,4797.231267 +Argentina,1952,17876956,Americas,62.485,5911.315053 +Argentina,1957,19610538,Americas,64.399,6856.856212 +Argentina,1962,21283783,Americas,65.142,7133.166023 +Argentina,1967,22934225,Americas,65.634,8052.953021 +Argentina,1972,24779799,Americas,67.065,9443.038526 +Argentina,1977,26983828,Americas,68.481,10079.02674 +Argentina,1982,29341374,Americas,69.942,8997.897412 +Argentina,1987,31620918,Americas,70.774,9139.671389 +Argentina,1992,33958947,Americas,71.868,9308.41871 +Argentina,1997,36203463,Americas,73.275,10967.28195 +Argentina,2002,38331121,Americas,74.34,8797.640716 +Argentina,2007,40301927,Americas,75.32,12779.37964 +Australia,1952,8691212,Oceania,69.12,10039.59564 +Australia,1957,9712569,Oceania,70.33,10949.64959 +Australia,1962,10794968,Oceania,70.93,12217.22686 +Australia,1967,11872264,Oceania,71.1,14526.12465 +Australia,1972,13177000,Oceania,71.93,16788.62948 +Australia,1977,14074100,Oceania,73.49,18334.19751 +Australia,1982,15184200,Oceania,74.74,19477.00928 +Australia,1987,16257249,Oceania,76.32,21888.88903 +Australia,1992,17481977,Oceania,77.56,23424.76683 +Australia,1997,18565243,Oceania,78.83,26997.93657 +Australia,2002,19546792,Oceania,80.37,30687.75473 +Australia,2007,20434176,Oceania,81.235,34435.36744 +Austria,1952,6927772,Europe,66.8,6137.076492 +Austria,1957,6965860,Europe,67.48,8842.59803 +Austria,1962,7129864,Europe,69.54,10750.72111 +Austria,1967,7376998,Europe,70.14,12834.6024 +Austria,1972,7544201,Europe,70.63,16661.6256 +Austria,1977,7568430,Europe,72.17,19749.4223 +Austria,1982,7574613,Europe,73.18,21597.08362 +Austria,1987,7578903,Europe,74.94,23687.82607 +Austria,1992,7914969,Europe,76.04,27042.01868 +Austria,1997,8069876,Europe,77.51,29095.92066 +Austria,2002,8148312,Europe,78.98,32417.60769 +Austria,2007,8199783,Europe,79.829,36126.4927 +Bahrain,1952,120447,Asia,50.939,9867.084765 +Bahrain,1957,138655,Asia,53.832,11635.79945 +Bahrain,1962,171863,Asia,56.923,12753.27514 +Bahrain,1967,202182,Asia,59.923,14804.6727 +Bahrain,1972,230800,Asia,63.3,18268.65839 +Bahrain,1977,297410,Asia,65.593,19340.10196 +Bahrain,1982,377967,Asia,69.052,19211.14731 +Bahrain,1987,454612,Asia,70.75,18524.02406 +Bahrain,1992,529491,Asia,72.601,19035.57917 +Bahrain,1997,598561,Asia,73.925,20292.01679 +Bahrain,2002,656397,Asia,74.795,23403.55927 +Bahrain,2007,708573,Asia,75.635,29796.04834 +Bangladesh,1952,46886859,Asia,37.484,684.2441716 +Bangladesh,1957,51365468,Asia,39.348,661.6374577 +Bangladesh,1962,56839289,Asia,41.216,686.3415538 +Bangladesh,1967,62821884,Asia,43.453,721.1860862 +Bangladesh,1972,70759295,Asia,45.252,630.2336265 +Bangladesh,1977,80428306,Asia,46.923,659.8772322 +Bangladesh,1982,93074406,Asia,50.009,676.9818656 +Bangladesh,1987,103764241,Asia,52.819,751.9794035 +Bangladesh,1992,113704579,Asia,56.018,837.8101643 +Bangladesh,1997,123315288,Asia,59.412,972.7700352 +Bangladesh,2002,135656790,Asia,62.013,1136.39043 +Bangladesh,2007,150448339,Asia,64.062,1391.253792 +Belgium,1952,8730405,Europe,68,8343.105127 +Belgium,1957,8989111,Europe,69.24,9714.960623 +Belgium,1962,9218400,Europe,70.25,10991.20676 +Belgium,1967,9556500,Europe,70.94,13149.04119 +Belgium,1972,9709100,Europe,71.44,16672.14356 +Belgium,1977,9821800,Europe,72.8,19117.97448 +Belgium,1982,9856303,Europe,73.93,20979.84589 +Belgium,1987,9870200,Europe,75.35,22525.56308 +Belgium,1992,10045622,Europe,76.46,25575.57069 +Belgium,1997,10199787,Europe,77.53,27561.19663 +Belgium,2002,10311970,Europe,78.32,30485.88375 +Belgium,2007,10392226,Europe,79.441,33692.60508 +Benin,1952,1738315,Africa,38.223,1062.7522 +Benin,1957,1925173,Africa,40.358,959.6010805 +Benin,1962,2151895,Africa,42.618,949.4990641 +Benin,1967,2427334,Africa,44.885,1035.831411 +Benin,1972,2761407,Africa,47.014,1085.796879 +Benin,1977,3168267,Africa,49.19,1029.161251 +Benin,1982,3641603,Africa,50.904,1277.897616 +Benin,1987,4243788,Africa,52.337,1225.85601 +Benin,1992,4981671,Africa,53.919,1191.207681 +Benin,1997,6066080,Africa,54.777,1232.975292 +Benin,2002,7026113,Africa,54.406,1372.877931 +Benin,2007,8078314,Africa,56.728,1441.284873 +Bolivia,1952,2883315,Americas,40.414,2677.326347 +Bolivia,1957,3211738,Americas,41.89,2127.686326 +Bolivia,1962,3593918,Americas,43.428,2180.972546 +Bolivia,1967,4040665,Americas,45.032,2586.886053 +Bolivia,1972,4565872,Americas,46.714,2980.331339 +Bolivia,1977,5079716,Americas,50.023,3548.097832 +Bolivia,1982,5642224,Americas,53.859,3156.510452 +Bolivia,1987,6156369,Americas,57.251,2753.69149 +Bolivia,1992,6893451,Americas,59.957,2961.699694 +Bolivia,1997,7693188,Americas,62.05,3326.143191 +Bolivia,2002,8445134,Americas,63.883,3413.26269 +Bolivia,2007,9119152,Americas,65.554,3822.137084 +Bosnia and Herzegovina,1952,2791000,Europe,53.82,973.5331948 +Bosnia and Herzegovina,1957,3076000,Europe,58.45,1353.989176 +Bosnia and Herzegovina,1962,3349000,Europe,61.93,1709.683679 +Bosnia and Herzegovina,1967,3585000,Europe,64.79,2172.352423 +Bosnia and Herzegovina,1972,3819000,Europe,67.45,2860.16975 +Bosnia and Herzegovina,1977,4086000,Europe,69.86,3528.481305 +Bosnia and Herzegovina,1982,4172693,Europe,70.69,4126.613157 +Bosnia and Herzegovina,1987,4338977,Europe,71.14,4314.114757 +Bosnia and Herzegovina,1992,4256013,Europe,72.178,2546.781445 +Bosnia and Herzegovina,1997,3607000,Europe,73.244,4766.355904 +Bosnia and Herzegovina,2002,4165416,Europe,74.09,6018.975239 +Bosnia and Herzegovina,2007,4552198,Europe,74.852,7446.298803 +Botswana,1952,442308,Africa,47.622,851.2411407 +Botswana,1957,474639,Africa,49.618,918.2325349 +Botswana,1962,512764,Africa,51.52,983.6539764 +Botswana,1967,553541,Africa,53.298,1214.709294 +Botswana,1972,619351,Africa,56.024,2263.611114 +Botswana,1977,781472,Africa,59.319,3214.857818 +Botswana,1982,970347,Africa,61.484,4551.14215 +Botswana,1987,1151184,Africa,63.622,6205.88385 +Botswana,1992,1342614,Africa,62.745,7954.111645 +Botswana,1997,1536536,Africa,52.556,8647.142313 +Botswana,2002,1630347,Africa,46.634,11003.60508 +Botswana,2007,1639131,Africa,50.728,12569.85177 +Brazil,1952,56602560,Americas,50.917,2108.944355 +Brazil,1957,65551171,Americas,53.285,2487.365989 +Brazil,1962,76039390,Americas,55.665,3336.585802 +Brazil,1967,88049823,Americas,57.632,3429.864357 +Brazil,1972,100840058,Americas,59.504,4985.711467 +Brazil,1977,114313951,Americas,61.489,6660.118654 +Brazil,1982,128962939,Americas,63.336,7030.835878 +Brazil,1987,142938076,Americas,65.205,7807.095818 +Brazil,1992,155975974,Americas,67.057,6950.283021 +Brazil,1997,168546719,Americas,69.388,7957.980824 +Brazil,2002,179914212,Americas,71.006,8131.212843 +Brazil,2007,190010647,Americas,72.39,9065.800825 +Bulgaria,1952,7274900,Europe,59.6,2444.286648 +Bulgaria,1957,7651254,Europe,66.61,3008.670727 +Bulgaria,1962,8012946,Europe,69.51,4254.337839 +Bulgaria,1967,8310226,Europe,70.42,5577.0028 +Bulgaria,1972,8576200,Europe,70.9,6597.494398 +Bulgaria,1977,8797022,Europe,70.81,7612.240438 +Bulgaria,1982,8892098,Europe,71.08,8224.191647 +Bulgaria,1987,8971958,Europe,71.34,8239.854824 +Bulgaria,1992,8658506,Europe,71.19,6302.623438 +Bulgaria,1997,8066057,Europe,70.32,5970.38876 +Bulgaria,2002,7661799,Europe,72.14,7696.777725 +Bulgaria,2007,7322858,Europe,73.005,10680.79282 +Burkina Faso,1952,4469979,Africa,31.975,543.2552413 +Burkina Faso,1957,4713416,Africa,34.906,617.1834648 +Burkina Faso,1962,4919632,Africa,37.814,722.5120206 +Burkina Faso,1967,5127935,Africa,40.697,794.8265597 +Burkina Faso,1972,5433886,Africa,43.591,854.7359763 +Burkina Faso,1977,5889574,Africa,46.137,743.3870368 +Burkina Faso,1982,6634596,Africa,48.122,807.1985855 +Burkina Faso,1987,7586551,Africa,49.557,912.0631417 +Burkina Faso,1992,8878303,Africa,50.26,931.7527731 +Burkina Faso,1997,10352843,Africa,50.324,946.2949618 +Burkina Faso,2002,12251209,Africa,50.65,1037.645221 +Burkina Faso,2007,14326203,Africa,52.295,1217.032994 +Burundi,1952,2445618,Africa,39.031,339.2964587 +Burundi,1957,2667518,Africa,40.533,379.5646281 +Burundi,1962,2961915,Africa,42.045,355.2032273 +Burundi,1967,3330989,Africa,43.548,412.9775136 +Burundi,1972,3529983,Africa,44.057,464.0995039 +Burundi,1977,3834415,Africa,45.91,556.1032651 +Burundi,1982,4580410,Africa,47.471,559.603231 +Burundi,1987,5126023,Africa,48.211,621.8188189 +Burundi,1992,5809236,Africa,44.736,631.6998778 +Burundi,1997,6121610,Africa,45.326,463.1151478 +Burundi,2002,7021078,Africa,47.36,446.4035126 +Burundi,2007,8390505,Africa,49.58,430.0706916 +Cambodia,1952,4693836,Asia,39.417,368.4692856 +Cambodia,1957,5322536,Asia,41.366,434.0383364 +Cambodia,1962,6083619,Asia,43.415,496.9136476 +Cambodia,1967,6960067,Asia,45.415,523.4323142 +Cambodia,1972,7450606,Asia,40.317,421.6240257 +Cambodia,1977,6978607,Asia,31.22,524.9721832 +Cambodia,1982,7272485,Asia,50.957,624.4754784 +Cambodia,1987,8371791,Asia,53.914,683.8955732 +Cambodia,1992,10150094,Asia,55.803,682.3031755 +Cambodia,1997,11782962,Asia,56.534,734.28517 +Cambodia,2002,12926707,Asia,56.752,896.2260153 +Cambodia,2007,14131858,Asia,59.723,1713.778686 +Cameroon,1952,5009067,Africa,38.523,1172.667655 +Cameroon,1957,5359923,Africa,40.428,1313.048099 +Cameroon,1962,5793633,Africa,42.643,1399.607441 +Cameroon,1967,6335506,Africa,44.799,1508.453148 +Cameroon,1972,7021028,Africa,47.049,1684.146528 +Cameroon,1977,7959865,Africa,49.355,1783.432873 +Cameroon,1982,9250831,Africa,52.961,2367.983282 +Cameroon,1987,10780667,Africa,54.985,2602.664206 +Cameroon,1992,12467171,Africa,54.314,1793.163278 +Cameroon,1997,14195809,Africa,52.199,1694.337469 +Cameroon,2002,15929988,Africa,49.856,1934.011449 +Cameroon,2007,17696293,Africa,50.43,2042.09524 +Canada,1952,14785584,Americas,68.75,11367.16112 +Canada,1957,17010154,Americas,69.96,12489.95006 +Canada,1962,18985849,Americas,71.3,13462.48555 +Canada,1967,20819767,Americas,72.13,16076.58803 +Canada,1972,22284500,Americas,72.88,18970.57086 +Canada,1977,23796400,Americas,74.21,22090.88306 +Canada,1982,25201900,Americas,75.76,22898.79214 +Canada,1987,26549700,Americas,76.86,26626.51503 +Canada,1992,28523502,Americas,77.95,26342.88426 +Canada,1997,30305843,Americas,78.61,28954.92589 +Canada,2002,31902268,Americas,79.77,33328.96507 +Canada,2007,33390141,Americas,80.653,36319.23501 +Central African Republic,1952,1291695,Africa,35.463,1071.310713 +Central African Republic,1957,1392284,Africa,37.464,1190.844328 +Central African Republic,1962,1523478,Africa,39.475,1193.068753 +Central African Republic,1967,1733638,Africa,41.478,1136.056615 +Central African Republic,1972,1927260,Africa,43.457,1070.013275 +Central African Republic,1977,2167533,Africa,46.775,1109.374338 +Central African Republic,1982,2476971,Africa,48.295,956.7529907 +Central African Republic,1987,2840009,Africa,50.485,844.8763504 +Central African Republic,1992,3265124,Africa,49.396,747.9055252 +Central African Republic,1997,3696513,Africa,46.066,740.5063317 +Central African Republic,2002,4048013,Africa,43.308,738.6906068 +Central African Republic,2007,4369038,Africa,44.741,706.016537 +Chad,1952,2682462,Africa,38.092,1178.665927 +Chad,1957,2894855,Africa,39.881,1308.495577 +Chad,1962,3150417,Africa,41.716,1389.817618 +Chad,1967,3495967,Africa,43.601,1196.810565 +Chad,1972,3899068,Africa,45.569,1104.103987 +Chad,1977,4388260,Africa,47.383,1133.98495 +Chad,1982,4875118,Africa,49.517,797.9081006 +Chad,1987,5498955,Africa,51.051,952.386129 +Chad,1992,6429417,Africa,51.724,1058.0643 +Chad,1997,7562011,Africa,51.573,1004.961353 +Chad,2002,8835739,Africa,50.525,1156.18186 +Chad,2007,10238807,Africa,50.651,1704.063724 +Chile,1952,6377619,Americas,54.745,3939.978789 +Chile,1957,7048426,Americas,56.074,4315.622723 +Chile,1962,7961258,Americas,57.924,4519.094331 +Chile,1967,8858908,Americas,60.523,5106.654313 +Chile,1972,9717524,Americas,63.441,5494.024437 +Chile,1977,10599793,Americas,67.052,4756.763836 +Chile,1982,11487112,Americas,70.565,5095.665738 +Chile,1987,12463354,Americas,72.492,5547.063754 +Chile,1992,13572994,Americas,74.126,7596.125964 +Chile,1997,14599929,Americas,75.816,10118.05318 +Chile,2002,15497046,Americas,77.86,10778.78385 +Chile,2007,16284741,Americas,78.553,13171.63885 +China,1952,556263527.999989,Asia,44,400.448610699994 +China,1957,637408000,Asia,50.54896,575.9870009 +China,1962,665770000,Asia,44.50136,487.6740183 +China,1967,754550000,Asia,58.38112,612.7056934 +China,1972,862030000,Asia,63.11888,676.9000921 +China,1977,943455000,Asia,63.96736,741.2374699 +China,1982,1000281000,Asia,65.525,962.4213805 +China,1987,1084035000,Asia,67.274,1378.904018 +China,1992,1164970000,Asia,68.69,1655.784158 +China,1997,1230075000,Asia,70.426,2289.234136 +China,2002,1280400000,Asia,72.028,3119.280896 +China,2007,1318683096,Asia,72.961,4959.114854 +Colombia,1952,12350771,Americas,50.643,2144.115096 +Colombia,1957,14485993,Americas,55.118,2323.805581 +Colombia,1962,17009885,Americas,57.863,2492.351109 +Colombia,1967,19764027,Americas,59.963,2678.729839 +Colombia,1972,22542890,Americas,61.623,3264.660041 +Colombia,1977,25094412,Americas,63.837,3815.80787 +Colombia,1982,27764644,Americas,66.653,4397.575659 +Colombia,1987,30964245,Americas,67.768,4903.2191 +Colombia,1992,34202721,Americas,68.421,5444.648617 +Colombia,1997,37657830,Americas,70.313,6117.361746 +Colombia,2002,41008227,Americas,71.682,5755.259962 +Colombia,2007,44227550,Americas,72.889,7006.580419 +Comoros,1952,153936,Africa,40.715,1102.990936 +Comoros,1957,170928,Africa,42.46,1211.148548 +Comoros,1962,191689,Africa,44.467,1406.648278 +Comoros,1967,217378,Africa,46.472,1876.029643 +Comoros,1972,250027,Africa,48.944,1937.577675 +Comoros,1977,304739,Africa,50.939,1172.603047 +Comoros,1982,348643,Africa,52.933,1267.100083 +Comoros,1987,395114,Africa,54.926,1315.980812 +Comoros,1992,454429,Africa,57.939,1246.90737 +Comoros,1997,527982,Africa,60.66,1173.618235 +Comoros,2002,614382,Africa,62.974,1075.811558 +Comoros,2007,710960,Africa,65.152,986.1478792 +Congo Dem. Rep.,1952,14100005,Africa,39.143,780.5423257 +Congo Dem. Rep.,1957,15577932,Africa,40.652,905.8602303 +Congo Dem. Rep.,1962,17486434,Africa,42.122,896.3146335 +Congo Dem. Rep.,1967,19941073,Africa,44.056,861.5932424 +Congo Dem. Rep.,1972,23007669,Africa,45.989,904.8960685 +Congo Dem. Rep.,1977,26480870,Africa,47.804,795.757282 +Congo Dem. Rep.,1982,30646495,Africa,47.784,673.7478181 +Congo Dem. Rep.,1987,35481645,Africa,47.412,672.774812 +Congo Dem. Rep.,1992,41672143,Africa,45.548,457.7191807 +Congo Dem. Rep.,1997,47798986,Africa,42.587,312.188423 +Congo Dem. Rep.,2002,55379852,Africa,44.966,241.1658765 +Congo Dem. Rep.,2007,64606759,Africa,46.462,277.5518587 +Congo Rep.,1952,854885,Africa,42.111,2125.621418 +Congo Rep.,1957,940458,Africa,45.053,2315.056572 +Congo Rep.,1962,1047924,Africa,48.435,2464.783157 +Congo Rep.,1967,1179760,Africa,52.04,2677.939642 +Congo Rep.,1972,1340458,Africa,54.907,3213.152683 +Congo Rep.,1977,1536769,Africa,55.625,3259.178978 +Congo Rep.,1982,1774735,Africa,56.695,4879.507522 +Congo Rep.,1987,2064095,Africa,57.47,4201.194937 +Congo Rep.,1992,2409073,Africa,56.433,4016.239529 +Congo Rep.,1997,2800947,Africa,52.962,3484.164376 +Congo Rep.,2002,3328795,Africa,52.97,3484.06197 +Congo Rep.,2007,3800610,Africa,55.322,3632.557798 +Costa Rica,1952,926317,Americas,57.206,2627.009471 +Costa Rica,1957,1112300,Americas,60.026,2990.010802 +Costa Rica,1962,1345187,Americas,62.842,3460.937025 +Costa Rica,1967,1588717,Americas,65.424,4161.727834 +Costa Rica,1972,1834796,Americas,67.849,5118.146939 +Costa Rica,1977,2108457,Americas,70.75,5926.876967 +Costa Rica,1982,2424367,Americas,73.45,5262.734751 +Costa Rica,1987,2799811,Americas,74.752,5629.915318 +Costa Rica,1992,3173216,Americas,75.713,6160.416317 +Costa Rica,1997,3518107,Americas,77.26,6677.045314 +Costa Rica,2002,3834934,Americas,78.123,7723.447195 +Costa Rica,2007,4133884,Americas,78.782,9645.06142 +"Cote d'Ivoire",1952,2977019,Africa,40.477,1388.594732 +"Cote d'Ivoire",1957,3300000,Africa,42.469,1500.895925 +"Cote d'Ivoire",1962,3832408,Africa,44.93,1728.869428 +"Cote d'Ivoire",1967,4744870,Africa,47.35,2052.050473 +"Cote d'Ivoire",1972,6071696,Africa,49.801,2378.201111 +"Cote d'Ivoire",1977,7459574,Africa,52.374,2517.736547 +"Cote d'Ivoire",1982,9025951,Africa,53.983,2602.710169 +"Cote d'Ivoire",1987,10761098,Africa,54.655,2156.956069 +"Cote d'Ivoire",1992,12772596,Africa,52.044,1648.073791 +"Cote d'Ivoire",1997,14625967,Africa,47.991,1786.265407 +"Cote d'Ivoire",2002,16252726,Africa,46.832,1648.800823 +"Cote d'Ivoire",2007,18013409,Africa,48.328,1544.750112 +Croatia,1952,3882229,Europe,61.21,3119.23652 +Croatia,1957,3991242,Europe,64.77,4338.231617 +Croatia,1962,4076557,Europe,67.13,5477.890018 +Croatia,1967,4174366,Europe,68.5,6960.297861 +Croatia,1972,4225310,Europe,69.61,9164.090127 +Croatia,1977,4318673,Europe,70.64,11305.38517 +Croatia,1982,4413368,Europe,70.46,13221.82184 +Croatia,1987,4484310,Europe,71.52,13822.58394 +Croatia,1992,4494013,Europe,72.527,8447.794873 +Croatia,1997,4444595,Europe,73.68,9875.604515 +Croatia,2002,4481020,Europe,74.876,11628.38895 +Croatia,2007,4493312,Europe,75.748,14619.22272 +Cuba,1952,6007797,Americas,59.421,5586.53878 +Cuba,1957,6640752,Americas,62.325,6092.174359 +Cuba,1962,7254373,Americas,65.246,5180.75591 +Cuba,1967,8139332,Americas,68.29,5690.268015 +Cuba,1972,8831348,Americas,70.723,5305.445256 +Cuba,1977,9537988,Americas,72.649,6380.494966 +Cuba,1982,9789224,Americas,73.717,7316.918107 +Cuba,1987,10239839,Americas,74.174,7532.924763 +Cuba,1992,10723260,Americas,74.414,5592.843963 +Cuba,1997,10983007,Americas,76.151,5431.990415 +Cuba,2002,11226999,Americas,77.158,6340.646683 +Cuba,2007,11416987,Americas,78.273,8948.102923 +Czech Republic,1952,9125183,Europe,66.87,6876.14025 +Czech Republic,1957,9513758,Europe,69.03,8256.343918 +Czech Republic,1962,9620282,Europe,69.9,10136.86713 +Czech Republic,1967,9835109,Europe,70.38,11399.44489 +Czech Republic,1972,9862158,Europe,70.29,13108.4536 +Czech Republic,1977,10161915,Europe,70.71,14800.16062 +Czech Republic,1982,10303704,Europe,70.96,15377.22855 +Czech Republic,1987,10311597,Europe,71.58,16310.4434 +Czech Republic,1992,10315702,Europe,72.4,14297.02122 +Czech Republic,1997,10300707,Europe,74.01,16048.51424 +Czech Republic,2002,10256295,Europe,75.51,17596.21022 +Czech Republic,2007,10228744,Europe,76.486,22833.30851 +Denmark,1952,4334000,Europe,70.78,9692.385245 +Denmark,1957,4487831,Europe,71.81,11099.65935 +Denmark,1962,4646899,Europe,72.35,13583.31351 +Denmark,1967,4838800,Europe,72.96,15937.21123 +Denmark,1972,4991596,Europe,73.47,18866.20721 +Denmark,1977,5088419,Europe,74.69,20422.9015 +Denmark,1982,5117810,Europe,74.63,21688.04048 +Denmark,1987,5127024,Europe,74.8,25116.17581 +Denmark,1992,5171393,Europe,75.33,26406.73985 +Denmark,1997,5283663,Europe,76.11,29804.34567 +Denmark,2002,5374693,Europe,77.18,32166.50006 +Denmark,2007,5468120,Europe,78.332,35278.41874 +Djibouti,1952,63149,Africa,34.812,2669.529475 +Djibouti,1957,71851,Africa,37.328,2864.969076 +Djibouti,1962,89898,Africa,39.693,3020.989263 +Djibouti,1967,127617,Africa,42.074,3020.050513 +Djibouti,1972,178848,Africa,44.366,3694.212352 +Djibouti,1977,228694,Africa,46.519,3081.761022 +Djibouti,1982,305991,Africa,48.812,2879.468067 +Djibouti,1987,311025,Africa,50.04,2880.102568 +Djibouti,1992,384156,Africa,51.604,2377.156192 +Djibouti,1997,417908,Africa,53.157,1895.016984 +Djibouti,2002,447416,Africa,53.373,1908.260867 +Djibouti,2007,496374,Africa,54.791,2082.481567 +Dominican Republic,1952,2491346,Americas,45.928,1397.717137 +Dominican Republic,1957,2923186,Americas,49.828,1544.402995 +Dominican Republic,1962,3453434,Americas,53.459,1662.137359 +Dominican Republic,1967,4049146,Americas,56.751,1653.723003 +Dominican Republic,1972,4671329,Americas,59.631,2189.874499 +Dominican Republic,1977,5302800,Americas,61.788,2681.9889 +Dominican Republic,1982,5968349,Americas,63.727,2861.092386 +Dominican Republic,1987,6655297,Americas,66.046,2899.842175 +Dominican Republic,1992,7351181,Americas,68.457,3044.214214 +Dominican Republic,1997,7992357,Americas,69.957,3614.101285 +Dominican Republic,2002,8650322,Americas,70.847,4563.808154 +Dominican Republic,2007,9319622,Americas,72.235,6025.374752 +Ecuador,1952,3548753,Americas,48.357,3522.110717 +Ecuador,1957,4058385,Americas,51.356,3780.546651 +Ecuador,1962,4681707,Americas,54.64,4086.114078 +Ecuador,1967,5432424,Americas,56.678,4579.074215 +Ecuador,1972,6298651,Americas,58.796,5280.99471 +Ecuador,1977,7278866,Americas,61.31,6679.62326 +Ecuador,1982,8365850,Americas,64.342,7213.791267 +Ecuador,1987,9545158,Americas,67.231,6481.776993 +Ecuador,1992,10748394,Americas,69.613,7103.702595 +Ecuador,1997,11911819,Americas,72.312,7429.455877 +Ecuador,2002,12921234,Americas,74.173,5773.044512 +Ecuador,2007,13755680,Americas,74.994,6873.262326 +Egypt,1952,22223309,Africa,41.893,1418.822445 +Egypt,1957,25009741,Africa,44.444,1458.915272 +Egypt,1962,28173309,Africa,46.992,1693.335853 +Egypt,1967,31681188,Africa,49.293,1814.880728 +Egypt,1972,34807417,Africa,51.137,2024.008147 +Egypt,1977,38783863,Africa,53.319,2785.493582 +Egypt,1982,45681811,Africa,56.006,3503.729636 +Egypt,1987,52799062,Africa,59.797,3885.46071 +Egypt,1992,59402198,Africa,63.674,3794.755195 +Egypt,1997,66134291,Africa,67.217,4173.181797 +Egypt,2002,73312559,Africa,69.806,4754.604414 +Egypt,2007,80264543,Africa,71.338,5581.180998 +El Salvador,1952,2042865,Americas,45.262,3048.3029 +El Salvador,1957,2355805,Americas,48.57,3421.523218 +El Salvador,1962,2747687,Americas,52.307,3776.803627 +El Salvador,1967,3232927,Americas,55.855,4358.595393 +El Salvador,1972,3790903,Americas,58.207,4520.246008 +El Salvador,1977,4282586,Americas,56.696,5138.922374 +El Salvador,1982,4474873,Americas,56.604,4098.344175 +El Salvador,1987,4842194,Americas,63.154,4140.442097 +El Salvador,1992,5274649,Americas,66.798,4444.2317 +El Salvador,1997,5783439,Americas,69.535,5154.825496 +El Salvador,2002,6353681,Americas,70.734,5351.568666 +El Salvador,2007,6939688,Americas,71.878,5728.353514 +Equatorial Guinea,1952,216964,Africa,34.482,375.6431231 +Equatorial Guinea,1957,232922,Africa,35.983,426.0964081 +Equatorial Guinea,1962,249220,Africa,37.485,582.8419714 +Equatorial Guinea,1967,259864,Africa,38.987,915.5960025 +Equatorial Guinea,1972,277603,Africa,40.516,672.4122571 +Equatorial Guinea,1977,192675,Africa,42.024,958.5668124 +Equatorial Guinea,1982,285483,Africa,43.662,927.8253427 +Equatorial Guinea,1987,341244,Africa,45.664,966.8968149 +Equatorial Guinea,1992,387838,Africa,47.545,1132.055034 +Equatorial Guinea,1997,439971,Africa,48.245,2814.480755 +Equatorial Guinea,2002,495627,Africa,49.348,7703.4959 +Equatorial Guinea,2007,551201,Africa,51.579,12154.08975 +Eritrea,1952,1438760,Africa,35.928,328.9405571 +Eritrea,1957,1542611,Africa,38.047,344.1618859 +Eritrea,1962,1666618,Africa,40.158,380.9958433 +Eritrea,1967,1820319,Africa,42.189,468.7949699 +Eritrea,1972,2260187,Africa,44.142,514.3242082 +Eritrea,1977,2512642,Africa,44.535,505.7538077 +Eritrea,1982,2637297,Africa,43.89,524.8758493 +Eritrea,1987,2915959,Africa,46.453,521.1341333 +Eritrea,1992,3668440,Africa,49.991,582.8585102 +Eritrea,1997,4058319,Africa,53.378,913.47079 +Eritrea,2002,4414865,Africa,55.24,765.3500015 +Eritrea,2007,4906585,Africa,58.04,641.3695236 +Ethiopia,1952,20860941,Africa,34.078,362.1462796 +Ethiopia,1957,22815614,Africa,36.667,378.9041632 +Ethiopia,1962,25145372,Africa,40.059,419.4564161 +Ethiopia,1967,27860297,Africa,42.115,516.1186438 +Ethiopia,1972,30770372,Africa,43.515,566.2439442 +Ethiopia,1977,34617799,Africa,44.51,556.8083834 +Ethiopia,1982,38111756,Africa,44.916,577.8607471 +Ethiopia,1987,42999530,Africa,46.684,573.7413142 +Ethiopia,1992,52088559,Africa,48.091,421.3534653 +Ethiopia,1997,59861301,Africa,49.402,515.8894013 +Ethiopia,2002,67946797,Africa,50.725,530.0535319 +Ethiopia,2007,76511887,Africa,52.947,690.8055759 +Finland,1952,4090500,Europe,66.55,6424.519071 +Finland,1957,4324000,Europe,67.49,7545.415386 +Finland,1962,4491443,Europe,68.75,9371.842561 +Finland,1967,4605744,Europe,69.83,10921.63626 +Finland,1972,4639657,Europe,70.87,14358.8759 +Finland,1977,4738902,Europe,72.52,15605.42283 +Finland,1982,4826933,Europe,74.55,18533.15761 +Finland,1987,4931729,Europe,74.83,21141.01223 +Finland,1992,5041039,Europe,75.7,20647.16499 +Finland,1997,5134406,Europe,77.13,23723.9502 +Finland,2002,5193039,Europe,78.37,28204.59057 +Finland,2007,5238460,Europe,79.313,33207.0844 +France,1952,42459667,Europe,67.41,7029.809327 +France,1957,44310863,Europe,68.93,8662.834898 +France,1962,47124000,Europe,70.51,10560.48553 +France,1967,49569000,Europe,71.55,12999.91766 +France,1972,51732000,Europe,72.38,16107.19171 +France,1977,53165019,Europe,73.83,18292.63514 +France,1982,54433565,Europe,74.89,20293.89746 +France,1987,55630100,Europe,76.34,22066.44214 +France,1992,57374179,Europe,77.46,24703.79615 +France,1997,58623428,Europe,78.64,25889.78487 +France,2002,59925035,Europe,79.59,28926.03234 +France,2007,61083916,Europe,80.657,30470.0167 +Gabon,1952,420702,Africa,37.003,4293.476475 +Gabon,1957,434904,Africa,38.999,4976.198099 +Gabon,1962,455661,Africa,40.489,6631.459222 +Gabon,1967,489004,Africa,44.598,8358.761987 +Gabon,1972,537977,Africa,48.69,11401.94841 +Gabon,1977,706367,Africa,52.79,21745.57328 +Gabon,1982,753874,Africa,56.564,15113.36194 +Gabon,1987,880397,Africa,60.19,11864.40844 +Gabon,1992,985739,Africa,61.366,13522.15752 +Gabon,1997,1126189,Africa,60.461,14722.84188 +Gabon,2002,1299304,Africa,56.761,12521.71392 +Gabon,2007,1454867,Africa,56.735,13206.48452 +Gambia,1952,284320,Africa,30,485.2306591 +Gambia,1957,323150,Africa,32.065,520.9267111 +Gambia,1962,374020,Africa,33.896,599.650276 +Gambia,1967,439593,Africa,35.857,734.7829124 +Gambia,1972,517101,Africa,38.308,756.0868363 +Gambia,1977,608274,Africa,41.842,884.7552507 +Gambia,1982,715523,Africa,45.58,835.8096108 +Gambia,1987,848406,Africa,49.265,611.6588611 +Gambia,1992,1025384,Africa,52.644,665.6244126 +Gambia,1997,1235767,Africa,55.861,653.7301704 +Gambia,2002,1457766,Africa,58.041,660.5855997 +Gambia,2007,1688359,Africa,59.448,752.7497265 +Germany,1952,69145952,Europe,67.5,7144.114393 +Germany,1957,71019069,Europe,69.1,10187.82665 +Germany,1962,73739117,Europe,70.3,12902.46291 +Germany,1967,76368453,Europe,70.8,14745.62561 +Germany,1972,78717088,Europe,71,18016.18027 +Germany,1977,78160773,Europe,72.5,20512.92123 +Germany,1982,78335266,Europe,73.8,22031.53274 +Germany,1987,77718298,Europe,74.847,24639.18566 +Germany,1992,80597764,Europe,76.07,26505.30317 +Germany,1997,82011073,Europe,77.34,27788.88416 +Germany,2002,82350671,Europe,78.67,30035.80198 +Germany,2007,82400996,Europe,79.406,32170.37442 +Ghana,1952,5581001,Africa,43.149,911.2989371 +Ghana,1957,6391288,Africa,44.779,1043.561537 +Ghana,1962,7355248,Africa,46.452,1190.041118 +Ghana,1967,8490213,Africa,48.072,1125.69716 +Ghana,1972,9354120,Africa,49.875,1178.223708 +Ghana,1977,10538093,Africa,51.756,993.2239571 +Ghana,1982,11400338,Africa,53.744,876.032569 +Ghana,1987,14168101,Africa,55.729,847.0061135 +Ghana,1992,16278738,Africa,57.501,925.060154 +Ghana,1997,18418288,Africa,58.556,1005.245812 +Ghana,2002,20550751,Africa,58.453,1111.984578 +Ghana,2007,22873338,Africa,60.022,1327.60891 +Greece,1952,7733250,Europe,65.86,3530.690067 +Greece,1957,8096218,Europe,67.86,4916.299889 +Greece,1962,8448233,Europe,69.51,6017.190733 +Greece,1967,8716441,Europe,71,8513.097016 +Greece,1972,8888628,Europe,72.34,12724.82957 +Greece,1977,9308479,Europe,73.68,14195.52428 +Greece,1982,9786480,Europe,75.24,15268.42089 +Greece,1987,9974490,Europe,76.67,16120.52839 +Greece,1992,10325429,Europe,77.03,17541.49634 +Greece,1997,10502372,Europe,77.869,18747.69814 +Greece,2002,10603863,Europe,78.256,22514.2548 +Greece,2007,10706290,Europe,79.483,27538.41188 +Guatemala,1952,3146381,Americas,42.023,2428.237769 +Guatemala,1957,3640876,Americas,44.142,2617.155967 +Guatemala,1962,4208858,Americas,46.954,2750.364446 +Guatemala,1967,4690773,Americas,50.016,3242.531147 +Guatemala,1972,5149581,Americas,53.738,4031.408271 +Guatemala,1977,5703430,Americas,56.029,4879.992748 +Guatemala,1982,6395630,Americas,58.137,4820.49479 +Guatemala,1987,7326406,Americas,60.782,4246.485974 +Guatemala,1992,8486949,Americas,63.373,4439.45084 +Guatemala,1997,9803875,Americas,66.322,4684.313807 +Guatemala,2002,11178650,Americas,68.978,4858.347495 +Guatemala,2007,12572928,Americas,70.259,5186.050003 +Guinea,1952,2664249,Africa,33.609,510.1964923 +Guinea,1957,2876726,Africa,34.558,576.2670245 +Guinea,1962,3140003,Africa,35.753,686.3736739 +Guinea,1967,3451418,Africa,37.197,708.7595409 +Guinea,1972,3811387,Africa,38.842,741.6662307 +Guinea,1977,4227026,Africa,40.762,874.6858643 +Guinea,1982,4710497,Africa,42.891,857.2503577 +Guinea,1987,5650262,Africa,45.552,805.5724718 +Guinea,1992,6990574,Africa,48.576,794.3484384 +Guinea,1997,8048834,Africa,51.455,869.4497668 +Guinea,2002,8807818,Africa,53.676,945.5835837 +Guinea,2007,9947814,Africa,56.007,942.6542111 +Guinea-Bissau,1952,580653,Africa,32.5,299.850319 +Guinea-Bissau,1957,601095,Africa,33.489,431.7904566 +Guinea-Bissau,1962,627820,Africa,34.488,522.0343725 +Guinea-Bissau,1967,601287,Africa,35.492,715.5806402 +Guinea-Bissau,1972,625361,Africa,36.486,820.2245876 +Guinea-Bissau,1977,745228,Africa,37.465,764.7259628 +Guinea-Bissau,1982,825987,Africa,39.327,838.1239671 +Guinea-Bissau,1987,927524,Africa,41.245,736.4153921 +Guinea-Bissau,1992,1050938,Africa,43.266,745.5398706 +Guinea-Bissau,1997,1193708,Africa,44.873,796.6644681 +Guinea-Bissau,2002,1332459,Africa,45.504,575.7047176 +Guinea-Bissau,2007,1472041,Africa,46.388,579.231743 +Haiti,1952,3201488,Americas,37.579,1840.366939 +Haiti,1957,3507701,Americas,40.696,1726.887882 +Haiti,1962,3880130,Americas,43.59,1796.589032 +Haiti,1967,4318137,Americas,46.243,1452.057666 +Haiti,1972,4698301,Americas,48.042,1654.456946 +Haiti,1977,4908554,Americas,49.923,1874.298931 +Haiti,1982,5198399,Americas,51.461,2011.159549 +Haiti,1987,5756203,Americas,53.636,1823.015995 +Haiti,1992,6326682,Americas,55.089,1456.309517 +Haiti,1997,6913545,Americas,56.671,1341.726931 +Haiti,2002,7607651,Americas,58.137,1270.364932 +Haiti,2007,8502814,Americas,60.916,1201.637154 +Honduras,1952,1517453,Americas,41.912,2194.926204 +Honduras,1957,1770390,Americas,44.665,2220.487682 +Honduras,1962,2090162,Americas,48.041,2291.156835 +Honduras,1967,2500689,Americas,50.924,2538.269358 +Honduras,1972,2965146,Americas,53.884,2529.842345 +Honduras,1977,3055235,Americas,57.402,3203.208066 +Honduras,1982,3669448,Americas,60.909,3121.760794 +Honduras,1987,4372203,Americas,64.492,3023.096699 +Honduras,1992,5077347,Americas,66.399,3081.694603 +Honduras,1997,5867957,Americas,67.659,3160.454906 +Honduras,2002,6677328,Americas,68.565,3099.72866 +Honduras,2007,7483763,Americas,70.198,3548.330846 +Hong Kong China,1952,2125900,Asia,60.96,3054.421209 +Hong Kong China,1957,2736300,Asia,64.75,3629.076457 +Hong Kong China,1962,3305200,Asia,67.65,4692.648272 +Hong Kong China,1967,3722800,Asia,70,6197.962814 +Hong Kong China,1972,4115700,Asia,72,8315.928145 +Hong Kong China,1977,4583700,Asia,73.6,11186.14125 +Hong Kong China,1982,5264500,Asia,75.45,14560.53051 +Hong Kong China,1987,5584510,Asia,76.2,20038.47269 +Hong Kong China,1992,5829696,Asia,77.601,24757.60301 +Hong Kong China,1997,6495918,Asia,80,28377.63219 +Hong Kong China,2002,6762476,Asia,81.495,30209.01516 +Hong Kong China,2007,6980412,Asia,82.208,39724.97867 +Hungary,1952,9504000,Europe,64.03,5263.673816 +Hungary,1957,9839000,Europe,66.41,6040.180011 +Hungary,1962,10063000,Europe,67.96,7550.359877 +Hungary,1967,10223422,Europe,69.5,9326.64467 +Hungary,1972,10394091,Europe,69.76,10168.65611 +Hungary,1977,10637171,Europe,69.95,11674.83737 +Hungary,1982,10705535,Europe,69.39,12545.99066 +Hungary,1987,10612740,Europe,69.58,12986.47998 +Hungary,1992,10348684,Europe,69.17,10535.62855 +Hungary,1997,10244684,Europe,71.04,11712.7768 +Hungary,2002,10083313,Europe,72.59,14843.93556 +Hungary,2007,9956108,Europe,73.338,18008.94444 +Iceland,1952,147962,Europe,72.49,7267.688428 +Iceland,1957,165110,Europe,73.47,9244.001412 +Iceland,1962,182053,Europe,73.68,10350.15906 +Iceland,1967,198676,Europe,73.73,13319.89568 +Iceland,1972,209275,Europe,74.46,15798.06362 +Iceland,1977,221823,Europe,76.11,19654.96247 +Iceland,1982,233997,Europe,76.99,23269.6075 +Iceland,1987,244676,Europe,77.23,26923.20628 +Iceland,1992,259012,Europe,78.77,25144.39201 +Iceland,1997,271192,Europe,78.95,28061.09966 +Iceland,2002,288030,Europe,80.5,31163.20196 +Iceland,2007,301931,Europe,81.757,36180.78919 +India,1952,3.72e+08,Asia,37.373,546.5657493 +India,1957,4.09e+08,Asia,40.249,590.061996 +India,1962,4.54e+08,Asia,43.605,658.3471509 +India,1967,5.06e+08,Asia,47.193,700.7706107 +India,1972,5.67e+08,Asia,50.651,724.032527 +India,1977,6.34e+08,Asia,54.208,813.337323 +India,1982,7.08e+08,Asia,56.596,855.7235377 +India,1987,7.88e+08,Asia,58.553,976.5126756 +India,1992,8.72e+08,Asia,60.223,1164.406809 +India,1997,9.59e+08,Asia,61.765,1458.817442 +India,2002,1034172547,Asia,62.879,1746.769454 +India,2007,1110396331,Asia,64.698,2452.210407 +Indonesia,1952,82052000,Asia,37.468,749.6816546 +Indonesia,1957,90124000,Asia,39.918,858.9002707 +Indonesia,1962,99028000,Asia,42.518,849.2897701 +Indonesia,1967,109343000,Asia,45.964,762.4317721 +Indonesia,1972,121282000,Asia,49.203,1111.107907 +Indonesia,1977,136725000,Asia,52.702,1382.702056 +Indonesia,1982,153343000,Asia,56.159,1516.872988 +Indonesia,1987,169276000,Asia,60.137,1748.356961 +Indonesia,1992,184816000,Asia,62.681,2383.140898 +Indonesia,1997,199278000,Asia,66.041,3119.335603 +Indonesia,2002,211060000,Asia,68.588,2873.91287 +Indonesia,2007,223547000,Asia,70.65,3540.651564 +Iran,1952,17272000,Asia,44.869,3035.326002 +Iran,1957,19792000,Asia,47.181,3290.257643 +Iran,1962,22874000,Asia,49.325,4187.329802 +Iran,1967,26538000,Asia,52.469,5906.731805 +Iran,1972,30614000,Asia,55.234,9613.818607 +Iran,1977,35480679,Asia,57.702,11888.59508 +Iran,1982,43072751,Asia,59.62,7608.334602 +Iran,1987,51889696,Asia,63.04,6642.881371 +Iran,1992,60397973,Asia,65.742,7235.653188 +Iran,1997,63327987,Asia,68.042,8263.590301 +Iran,2002,66907826,Asia,69.451,9240.761975 +Iran,2007,69453570,Asia,70.964,11605.71449 +Iraq,1952,5441766,Asia,45.32,4129.766056 +Iraq,1957,6248643,Asia,48.437,6229.333562 +Iraq,1962,7240260,Asia,51.457,8341.737815 +Iraq,1967,8519282,Asia,54.459,8931.459811 +Iraq,1972,10061506,Asia,56.95,9576.037596 +Iraq,1977,11882916,Asia,60.413,14688.23507 +Iraq,1982,14173318,Asia,62.038,14517.90711 +Iraq,1987,16543189,Asia,65.044,11643.57268 +Iraq,1992,17861905,Asia,59.461,3745.640687 +Iraq,1997,20775703,Asia,58.811,3076.239795 +Iraq,2002,24001816,Asia,57.046,4390.717312 +Iraq,2007,27499638,Asia,59.545,4471.061906 +Ireland,1952,2952156,Europe,66.91,5210.280328 +Ireland,1957,2878220,Europe,68.9,5599.077872 +Ireland,1962,2830000,Europe,70.29,6631.597314 +Ireland,1967,2900100,Europe,71.08,7655.568963 +Ireland,1972,3024400,Europe,71.28,9530.772896 +Ireland,1977,3271900,Europe,72.03,11150.98113 +Ireland,1982,3480000,Europe,73.1,12618.32141 +Ireland,1987,3539900,Europe,74.36,13872.86652 +Ireland,1992,3557761,Europe,75.467,17558.81555 +Ireland,1997,3667233,Europe,76.122,24521.94713 +Ireland,2002,3879155,Europe,77.783,34077.04939 +Ireland,2007,4109086,Europe,78.885,40675.99635 +Israel,1952,1620914,Asia,65.39,4086.522128 +Israel,1957,1944401,Asia,67.84,5385.278451 +Israel,1962,2310904,Asia,69.39,7105.630706 +Israel,1967,2693585,Asia,70.75,8393.741404 +Israel,1972,3095893,Asia,71.63,12786.93223 +Israel,1977,3495918,Asia,73.06,13306.61921 +Israel,1982,3858421,Asia,74.45,15367.0292 +Israel,1987,4203148,Asia,75.6,17122.47986 +Israel,1992,4936550,Asia,76.93,18051.52254 +Israel,1997,5531387,Asia,78.269,20896.60924 +Israel,2002,6029529,Asia,79.696,21905.59514 +Israel,2007,6426679,Asia,80.745,25523.2771 +Italy,1952,47666000,Europe,65.94,4931.404155 +Italy,1957,49182000,Europe,67.81,6248.656232 +Italy,1962,50843200,Europe,69.24,8243.58234 +Italy,1967,52667100,Europe,71.06,10022.40131 +Italy,1972,54365564,Europe,72.19,12269.27378 +Italy,1977,56059245,Europe,73.48,14255.98475 +Italy,1982,56535636,Europe,74.98,16537.4835 +Italy,1987,56729703,Europe,76.42,19207.23482 +Italy,1992,56840847,Europe,77.44,22013.64486 +Italy,1997,57479469,Europe,78.82,24675.02446 +Italy,2002,57926999,Europe,80.24,27968.09817 +Italy,2007,58147733,Europe,80.546,28569.7197 +Jamaica,1952,1426095,Americas,58.53,2898.530881 +Jamaica,1957,1535090,Americas,62.61,4756.525781 +Jamaica,1962,1665128,Americas,65.61,5246.107524 +Jamaica,1967,1861096,Americas,67.51,6124.703451 +Jamaica,1972,1997616,Americas,69,7433.889293 +Jamaica,1977,2156814,Americas,70.11,6650.195573 +Jamaica,1982,2298309,Americas,71.21,6068.05135 +Jamaica,1987,2326606,Americas,71.77,6351.237495 +Jamaica,1992,2378618,Americas,71.766,7404.923685 +Jamaica,1997,2531311,Americas,72.262,7121.924704 +Jamaica,2002,2664659,Americas,72.047,6994.774861 +Jamaica,2007,2780132,Americas,72.567,7320.880262 +Japan,1952,86459025,Asia,63.03,3216.956347 +Japan,1957,91563009,Asia,65.5,4317.694365 +Japan,1962,95831757,Asia,68.73,6576.649461 +Japan,1967,100825279,Asia,71.43,9847.788607 +Japan,1972,107188273,Asia,73.42,14778.78636 +Japan,1977,113872473,Asia,75.38,16610.37701 +Japan,1982,118454974,Asia,77.11,19384.10571 +Japan,1987,122091325,Asia,78.67,22375.94189 +Japan,1992,124329269,Asia,79.36,26824.89511 +Japan,1997,125956499,Asia,80.69,28816.58499 +Japan,2002,127065841,Asia,82,28604.5919 +Japan,2007,127467972,Asia,82.603,31656.06806 +Jordan,1952,607914,Asia,43.158,1546.907807 +Jordan,1957,746559,Asia,45.669,1886.080591 +Jordan,1962,933559,Asia,48.126,2348.009158 +Jordan,1967,1255058,Asia,51.629,2741.796252 +Jordan,1972,1613551,Asia,56.528,2110.856309 +Jordan,1977,1937652,Asia,61.134,2852.351568 +Jordan,1982,2347031,Asia,63.739,4161.415959 +Jordan,1987,2820042,Asia,65.869,4448.679912 +Jordan,1992,3867409,Asia,68.015,3431.593647 +Jordan,1997,4526235,Asia,69.772,3645.379572 +Jordan,2002,5307470,Asia,71.263,3844.917194 +Jordan,2007,6053193,Asia,72.535,4519.461171 +Kenya,1952,6464046,Africa,42.27,853.540919 +Kenya,1957,7454779,Africa,44.686,944.4383152 +Kenya,1962,8678557,Africa,47.949,896.9663732 +Kenya,1967,10191512,Africa,50.654,1056.736457 +Kenya,1972,12044785,Africa,53.559,1222.359968 +Kenya,1977,14500404,Africa,56.155,1267.613204 +Kenya,1982,17661452,Africa,58.766,1348.225791 +Kenya,1987,21198082,Africa,59.339,1361.936856 +Kenya,1992,25020539,Africa,59.285,1341.921721 +Kenya,1997,28263827,Africa,54.407,1360.485021 +Kenya,2002,31386842,Africa,50.992,1287.514732 +Kenya,2007,35610177,Africa,54.11,1463.249282 +Korea Dem. Rep.,1952,8865488,Asia,50.056,1088.277758 +Korea Dem. Rep.,1957,9411381,Asia,54.081,1571.134655 +Korea Dem. Rep.,1962,10917494,Asia,56.656,1621.693598 +Korea Dem. Rep.,1967,12617009,Asia,59.942,2143.540609 +Korea Dem. Rep.,1972,14781241,Asia,63.983,3701.621503 +Korea Dem. Rep.,1977,16325320,Asia,67.159,4106.301249 +Korea Dem. Rep.,1982,17647518,Asia,69.1,4106.525293 +Korea Dem. Rep.,1987,19067554,Asia,70.647,4106.492315 +Korea Dem. Rep.,1992,20711375,Asia,69.978,3726.063507 +Korea Dem. Rep.,1997,21585105,Asia,67.727,1690.756814 +Korea Dem. Rep.,2002,22215365,Asia,66.662,1646.758151 +Korea Dem. Rep.,2007,23301725,Asia,67.297,1593.06548 +Korea Rep.,1952,20947571,Asia,47.453,1030.592226 +Korea Rep.,1957,22611552,Asia,52.681,1487.593537 +Korea Rep.,1962,26420307,Asia,55.292,1536.344387 +Korea Rep.,1967,30131000,Asia,57.716,2029.228142 +Korea Rep.,1972,33505000,Asia,62.612,3030.87665 +Korea Rep.,1977,36436000,Asia,64.766,4657.22102 +Korea Rep.,1982,39326000,Asia,67.123,5622.942464 +Korea Rep.,1987,41622000,Asia,69.81,8533.088805 +Korea Rep.,1992,43805450,Asia,72.244,12104.27872 +Korea Rep.,1997,46173816,Asia,74.647,15993.52796 +Korea Rep.,2002,47969150,Asia,77.045,19233.98818 +Korea Rep.,2007,49044790,Asia,78.623,23348.13973 +Kuwait,1952,160000,Asia,55.565,108382.3529 +Kuwait,1957,212846,Asia,58.033,113523.1329 +Kuwait,1962,358266,Asia,60.47,95458.11176 +Kuwait,1967,575003,Asia,64.624,80894.88326 +Kuwait,1972,841934,Asia,67.712,109347.867 +Kuwait,1977,1140357,Asia,69.343,59265.47714 +Kuwait,1982,1497494,Asia,71.309,31354.03573 +Kuwait,1987,1891487,Asia,74.174,28118.42998 +Kuwait,1992,1418095,Asia,75.19,34932.91959 +Kuwait,1997,1765345,Asia,76.156,40300.61996 +Kuwait,2002,2111561,Asia,76.904,35110.10566 +Kuwait,2007,2505559,Asia,77.588,47306.98978 +Lebanon,1952,1439529,Asia,55.928,4834.804067 +Lebanon,1957,1647412,Asia,59.489,6089.786934 +Lebanon,1962,1886848,Asia,62.094,5714.560611 +Lebanon,1967,2186894,Asia,63.87,6006.983042 +Lebanon,1972,2680018,Asia,65.421,7486.384341 +Lebanon,1977,3115787,Asia,66.099,8659.696836 +Lebanon,1982,3086876,Asia,66.983,7640.519521 +Lebanon,1987,3089353,Asia,67.926,5377.091329 +Lebanon,1992,3219994,Asia,69.292,6890.806854 +Lebanon,1997,3430388,Asia,70.265,8754.96385 +Lebanon,2002,3677780,Asia,71.028,9313.93883 +Lebanon,2007,3921278,Asia,71.993,10461.05868 +Lesotho,1952,748747,Africa,42.138,298.8462121 +Lesotho,1957,813338,Africa,45.047,335.9971151 +Lesotho,1962,893143,Africa,47.747,411.8006266 +Lesotho,1967,996380,Africa,48.492,498.6390265 +Lesotho,1972,1116779,Africa,49.767,496.5815922 +Lesotho,1977,1251524,Africa,52.208,745.3695408 +Lesotho,1982,1411807,Africa,55.078,797.2631074 +Lesotho,1987,1599200,Africa,57.18,773.9932141 +Lesotho,1992,1803195,Africa,59.685,977.4862725 +Lesotho,1997,1982823,Africa,55.558,1186.147994 +Lesotho,2002,2046772,Africa,44.593,1275.184575 +Lesotho,2007,2012649,Africa,42.592,1569.331442 +Liberia,1952,863308,Africa,38.48,575.5729961 +Liberia,1957,975950,Africa,39.486,620.9699901 +Liberia,1962,1112796,Africa,40.502,634.1951625 +Liberia,1967,1279406,Africa,41.536,713.6036483 +Liberia,1972,1482628,Africa,42.614,803.0054535 +Liberia,1977,1703617,Africa,43.764,640.3224383 +Liberia,1982,1956875,Africa,44.852,572.1995694 +Liberia,1987,2269414,Africa,46.027,506.1138573 +Liberia,1992,1912974,Africa,40.802,636.6229191 +Liberia,1997,2200725,Africa,42.221,609.1739508 +Liberia,2002,2814651,Africa,43.753,531.4823679 +Liberia,2007,3193942,Africa,45.678,414.5073415 +Libya,1952,1019729,Africa,42.723,2387.54806 +Libya,1957,1201578,Africa,45.289,3448.284395 +Libya,1962,1441863,Africa,47.808,6757.030816 +Libya,1967,1759224,Africa,50.227,18772.75169 +Libya,1972,2183877,Africa,52.773,21011.49721 +Libya,1977,2721783,Africa,57.442,21951.21176 +Libya,1982,3344074,Africa,62.155,17364.27538 +Libya,1987,3799845,Africa,66.234,11770.5898 +Libya,1992,4364501,Africa,68.755,9640.138501 +Libya,1997,4759670,Africa,71.555,9467.446056 +Libya,2002,5368585,Africa,72.737,9534.677467 +Libya,2007,6036914,Africa,73.952,12057.49928 +Madagascar,1952,4762912,Africa,36.681,1443.011715 +Madagascar,1957,5181679,Africa,38.865,1589.20275 +Madagascar,1962,5703324,Africa,40.848,1643.38711 +Madagascar,1967,6334556,Africa,42.881,1634.047282 +Madagascar,1972,7082430,Africa,44.851,1748.562982 +Madagascar,1977,8007166,Africa,46.881,1544.228586 +Madagascar,1982,9171477,Africa,48.969,1302.878658 +Madagascar,1987,10568642,Africa,49.35,1155.441948 +Madagascar,1992,12210395,Africa,52.214,1040.67619 +Madagascar,1997,14165114,Africa,54.978,986.2958956 +Madagascar,2002,16473477,Africa,57.286,894.6370822 +Madagascar,2007,19167654,Africa,59.443,1044.770126 +Malawi,1952,2917802,Africa,36.256,369.1650802 +Malawi,1957,3221238,Africa,37.207,416.3698064 +Malawi,1962,3628608,Africa,38.41,427.9010856 +Malawi,1967,4147252,Africa,39.487,495.5147806 +Malawi,1972,4730997,Africa,41.766,584.6219709 +Malawi,1977,5637246,Africa,43.767,663.2236766 +Malawi,1982,6502825,Africa,45.642,632.8039209 +Malawi,1987,7824747,Africa,47.457,635.5173634 +Malawi,1992,10014249,Africa,49.42,563.2000145 +Malawi,1997,10419991,Africa,47.495,692.2758103 +Malawi,2002,11824495,Africa,45.009,665.4231186 +Malawi,2007,13327079,Africa,48.303,759.3499101 +Malaysia,1952,6748378,Asia,48.463,1831.132894 +Malaysia,1957,7739235,Asia,52.102,1810.066992 +Malaysia,1962,8906385,Asia,55.737,2036.884944 +Malaysia,1967,10154878,Asia,59.371,2277.742396 +Malaysia,1972,11441462,Asia,63.01,2849.09478 +Malaysia,1977,12845381,Asia,65.256,3827.921571 +Malaysia,1982,14441916,Asia,68,4920.355951 +Malaysia,1987,16331785,Asia,69.5,5249.802653 +Malaysia,1992,18319502,Asia,70.693,7277.912802 +Malaysia,1997,20476091,Asia,71.938,10132.90964 +Malaysia,2002,22662365,Asia,73.044,10206.97794 +Malaysia,2007,24821286,Asia,74.241,12451.6558 +Mali,1952,3838168,Africa,33.685,452.3369807 +Mali,1957,4241884,Africa,35.307,490.3821867 +Mali,1962,4690372,Africa,36.936,496.1743428 +Mali,1967,5212416,Africa,38.487,545.0098873 +Mali,1972,5828158,Africa,39.977,581.3688761 +Mali,1977,6491649,Africa,41.714,686.3952693 +Mali,1982,6998256,Africa,43.916,618.0140641 +Mali,1987,7634008,Africa,46.364,684.1715576 +Mali,1992,8416215,Africa,48.388,739.014375 +Mali,1997,9384984,Africa,49.903,790.2579846 +Mali,2002,10580176,Africa,51.818,951.4097518 +Mali,2007,12031795,Africa,54.467,1042.581557 +Mauritania,1952,1022556,Africa,40.543,743.1159097 +Mauritania,1957,1076852,Africa,42.338,846.1202613 +Mauritania,1962,1146757,Africa,44.248,1055.896036 +Mauritania,1967,1230542,Africa,46.289,1421.145193 +Mauritania,1972,1332786,Africa,48.437,1586.851781 +Mauritania,1977,1456688,Africa,50.852,1497.492223 +Mauritania,1982,1622136,Africa,53.599,1481.150189 +Mauritania,1987,1841240,Africa,56.145,1421.603576 +Mauritania,1992,2119465,Africa,58.333,1361.369784 +Mauritania,1997,2444741,Africa,60.43,1483.136136 +Mauritania,2002,2828858,Africa,62.247,1579.019543 +Mauritania,2007,3270065,Africa,64.164,1803.151496 +Mauritius,1952,516556,Africa,50.986,1967.955707 +Mauritius,1957,609816,Africa,58.089,2034.037981 +Mauritius,1962,701016,Africa,60.246,2529.067487 +Mauritius,1967,789309,Africa,61.557,2475.387562 +Mauritius,1972,851334,Africa,62.944,2575.484158 +Mauritius,1977,913025,Africa,64.93,3710.982963 +Mauritius,1982,992040,Africa,66.711,3688.037739 +Mauritius,1987,1042663,Africa,68.74,4783.586903 +Mauritius,1992,1096202,Africa,69.745,6058.253846 +Mauritius,1997,1149818,Africa,70.736,7425.705295 +Mauritius,2002,1200206,Africa,71.954,9021.815894 +Mauritius,2007,1250882,Africa,72.801,10956.99112 +Mexico,1952,30144317,Americas,50.789,3478.125529 +Mexico,1957,35015548,Americas,55.19,4131.546641 +Mexico,1962,41121485,Americas,58.299,4581.609385 +Mexico,1967,47995559,Americas,60.11,5754.733883 +Mexico,1972,55984294,Americas,62.361,6809.40669 +Mexico,1977,63759976,Americas,65.032,7674.929108 +Mexico,1982,71640904,Americas,67.405,9611.147541 +Mexico,1987,80122492,Americas,69.498,8688.156003 +Mexico,1992,88111030,Americas,71.455,9472.384295 +Mexico,1997,95895146,Americas,73.67,9767.29753 +Mexico,2002,102479927,Americas,74.902,10742.44053 +Mexico,2007,108700891,Americas,76.195,11977.57496 +Mongolia,1952,800663,Asia,42.244,786.5668575 +Mongolia,1957,882134,Asia,45.248,912.6626085 +Mongolia,1962,1010280,Asia,48.251,1056.353958 +Mongolia,1967,1149500,Asia,51.253,1226.04113 +Mongolia,1972,1320500,Asia,53.754,1421.741975 +Mongolia,1977,1528000,Asia,55.491,1647.511665 +Mongolia,1982,1756032,Asia,57.489,2000.603139 +Mongolia,1987,2015133,Asia,60.222,2338.008304 +Mongolia,1992,2312802,Asia,61.271,1785.402016 +Mongolia,1997,2494803,Asia,63.625,1902.2521 +Mongolia,2002,2674234,Asia,65.033,2140.739323 +Mongolia,2007,2874127,Asia,66.803,3095.772271 +Montenegro,1952,413834,Europe,59.164,2647.585601 +Montenegro,1957,442829,Europe,61.448,3682.259903 +Montenegro,1962,474528,Europe,63.728,4649.593785 +Montenegro,1967,501035,Europe,67.178,5907.850937 +Montenegro,1972,527678,Europe,70.636,7778.414017 +Montenegro,1977,560073,Europe,73.066,9595.929905 +Montenegro,1982,562548,Europe,74.101,11222.58762 +Montenegro,1987,569473,Europe,74.865,11732.51017 +Montenegro,1992,621621,Europe,75.435,7003.339037 +Montenegro,1997,692651,Europe,75.445,6465.613349 +Montenegro,2002,720230,Europe,73.981,6557.194282 +Montenegro,2007,684736,Europe,74.543,9253.896111 +Morocco,1952,9939217,Africa,42.873,1688.20357 +Morocco,1957,11406350,Africa,45.423,1642.002314 +Morocco,1962,13056604,Africa,47.924,1566.353493 +Morocco,1967,14770296,Africa,50.335,1711.04477 +Morocco,1972,16660670,Africa,52.862,1930.194975 +Morocco,1977,18396941,Africa,55.73,2370.619976 +Morocco,1982,20198730,Africa,59.65,2702.620356 +Morocco,1987,22987397,Africa,62.677,2755.046991 +Morocco,1992,25798239,Africa,65.393,2948.047252 +Morocco,1997,28529501,Africa,67.66,2982.101858 +Morocco,2002,31167783,Africa,69.615,3258.495584 +Morocco,2007,33757175,Africa,71.164,3820.17523 +Mozambique,1952,6446316,Africa,31.286,468.5260381 +Mozambique,1957,7038035,Africa,33.779,495.5868333 +Mozambique,1962,7788944,Africa,36.161,556.6863539 +Mozambique,1967,8680909,Africa,38.113,566.6691539 +Mozambique,1972,9809596,Africa,40.328,724.9178037 +Mozambique,1977,11127868,Africa,42.495,502.3197334 +Mozambique,1982,12587223,Africa,42.795,462.2114149 +Mozambique,1987,12891952,Africa,42.861,389.8761846 +Mozambique,1992,13160731,Africa,44.284,410.8968239 +Mozambique,1997,16603334,Africa,46.344,472.3460771 +Mozambique,2002,18473780,Africa,44.026,633.6179466 +Mozambique,2007,19951656,Africa,42.082,823.6856205 +Myanmar,1952,20092996,Asia,36.319,331 +Myanmar,1957,21731844,Asia,41.905,350 +Myanmar,1962,23634436,Asia,45.108,388 +Myanmar,1967,25870271,Asia,49.379,349 +Myanmar,1972,28466390,Asia,53.07,357 +Myanmar,1977,31528087,Asia,56.059,371 +Myanmar,1982,34680442,Asia,58.056,424 +Myanmar,1987,38028578,Asia,58.339,385 +Myanmar,1992,40546538,Asia,59.32,347 +Myanmar,1997,43247867,Asia,60.328,415 +Myanmar,2002,45598081,Asia,59.908,611 +Myanmar,2007,47761980,Asia,62.069,944 +Namibia,1952,485831,Africa,41.725,2423.780443 +Namibia,1957,548080,Africa,45.226,2621.448058 +Namibia,1962,621392,Africa,48.386,3173.215595 +Namibia,1967,706640,Africa,51.159,3793.694753 +Namibia,1972,821782,Africa,53.867,3746.080948 +Namibia,1977,977026,Africa,56.437,3876.485958 +Namibia,1982,1099010,Africa,58.968,4191.100511 +Namibia,1987,1278184,Africa,60.835,3693.731337 +Namibia,1992,1554253,Africa,61.999,3804.537999 +Namibia,1997,1774766,Africa,58.909,3899.52426 +Namibia,2002,1972153,Africa,51.479,4072.324751 +Namibia,2007,2055080,Africa,52.906,4811.060429 +Nepal,1952,9182536,Asia,36.157,545.8657229 +Nepal,1957,9682338,Asia,37.686,597.9363558 +Nepal,1962,10332057,Asia,39.393,652.3968593 +Nepal,1967,11261690,Asia,41.472,676.4422254 +Nepal,1972,12412593,Asia,43.971,674.7881296 +Nepal,1977,13933198,Asia,46.748,694.1124398 +Nepal,1982,15796314,Asia,49.594,718.3730947 +Nepal,1987,17917180,Asia,52.537,775.6324501 +Nepal,1992,20326209,Asia,55.727,897.7403604 +Nepal,1997,23001113,Asia,59.426,1010.892138 +Nepal,2002,25873917,Asia,61.34,1057.206311 +Nepal,2007,28901790,Asia,63.785,1091.359778 +Netherlands,1952,10381988,Europe,72.13,8941.571858 +Netherlands,1957,11026383,Europe,72.99,11276.19344 +Netherlands,1962,11805689,Europe,73.23,12790.84956 +Netherlands,1967,12596822,Europe,73.82,15363.25136 +Netherlands,1972,13329874,Europe,73.75,18794.74567 +Netherlands,1977,13852989,Europe,75.24,21209.0592 +Netherlands,1982,14310401,Europe,76.05,21399.46046 +Netherlands,1987,14665278,Europe,76.83,23651.32361 +Netherlands,1992,15174244,Europe,77.42,26790.94961 +Netherlands,1997,15604464,Europe,78.03,30246.13063 +Netherlands,2002,16122830,Europe,78.53,33724.75778 +Netherlands,2007,16570613,Europe,79.762,36797.93332 +New Zealand,1952,1994794,Oceania,69.39,10556.57566 +New Zealand,1957,2229407,Oceania,70.26,12247.39532 +New Zealand,1962,2488550,Oceania,71.24,13175.678 +New Zealand,1967,2728150,Oceania,71.52,14463.91893 +New Zealand,1972,2929100,Oceania,71.89,16046.03728 +New Zealand,1977,3164900,Oceania,72.22,16233.7177 +New Zealand,1982,3210650,Oceania,73.84,17632.4104 +New Zealand,1987,3317166,Oceania,74.32,19007.19129 +New Zealand,1992,3437674,Oceania,76.33,18363.32494 +New Zealand,1997,3676187,Oceania,77.55,21050.41377 +New Zealand,2002,3908037,Oceania,79.11,23189.80135 +New Zealand,2007,4115771,Oceania,80.204,25185.00911 +Nicaragua,1952,1165790,Americas,42.314,3112.363948 +Nicaragua,1957,1358828,Americas,45.432,3457.415947 +Nicaragua,1962,1590597,Americas,48.632,3634.364406 +Nicaragua,1967,1865490,Americas,51.884,4643.393534 +Nicaragua,1972,2182908,Americas,55.151,4688.593267 +Nicaragua,1977,2554598,Americas,57.47,5486.371089 +Nicaragua,1982,2979423,Americas,59.298,3470.338156 +Nicaragua,1987,3344353,Americas,62.008,2955.984375 +Nicaragua,1992,4017939,Americas,65.843,2170.151724 +Nicaragua,1997,4609572,Americas,68.426,2253.023004 +Nicaragua,2002,5146848,Americas,70.836,2474.548819 +Nicaragua,2007,5675356,Americas,72.899,2749.320965 +Niger,1952,3379468,Africa,37.444,761.879376 +Niger,1957,3692184,Africa,38.598,835.5234025 +Niger,1962,4076008,Africa,39.487,997.7661127 +Niger,1967,4534062,Africa,40.118,1054.384891 +Niger,1972,5060262,Africa,40.546,954.2092363 +Niger,1977,5682086,Africa,41.291,808.8970728 +Niger,1982,6437188,Africa,42.598,909.7221354 +Niger,1987,7332638,Africa,44.555,668.3000228 +Niger,1992,8392818,Africa,47.391,581.182725 +Niger,1997,9666252,Africa,51.313,580.3052092 +Niger,2002,11140655,Africa,54.496,601.0745012 +Niger,2007,12894865,Africa,56.867,619.6768924 +Nigeria,1952,33119096,Africa,36.324,1077.281856 +Nigeria,1957,37173340,Africa,37.802,1100.592563 +Nigeria,1962,41871351,Africa,39.36,1150.927478 +Nigeria,1967,47287752,Africa,41.04,1014.514104 +Nigeria,1972,53740085,Africa,42.821,1698.388838 +Nigeria,1977,62209173,Africa,44.514,1981.951806 +Nigeria,1982,73039376,Africa,45.826,1576.97375 +Nigeria,1987,81551520,Africa,46.886,1385.029563 +Nigeria,1992,93364244,Africa,47.472,1619.848217 +Nigeria,1997,106207839,Africa,47.464,1624.941275 +Nigeria,2002,119901274,Africa,46.608,1615.286395 +Nigeria,2007,135031164,Africa,46.859,2013.977305 +Norway,1952,3327728,Europe,72.67,10095.42172 +Norway,1957,3491938,Europe,73.44,11653.97304 +Norway,1962,3638919,Europe,73.47,13450.40151 +Norway,1967,3786019,Europe,74.08,16361.87647 +Norway,1972,3933004,Europe,74.34,18965.05551 +Norway,1977,4043205,Europe,75.37,23311.34939 +Norway,1982,4114787,Europe,75.97,26298.63531 +Norway,1987,4186147,Europe,75.89,31540.9748 +Norway,1992,4286357,Europe,77.32,33965.66115 +Norway,1997,4405672,Europe,78.32,41283.16433 +Norway,2002,4535591,Europe,79.05,44683.97525 +Norway,2007,4627926,Europe,80.196,49357.19017 +Oman,1952,507833,Asia,37.578,1828.230307 +Oman,1957,561977,Asia,40.08,2242.746551 +Oman,1962,628164,Asia,43.165,2924.638113 +Oman,1967,714775,Asia,46.988,4720.942687 +Oman,1972,829050,Asia,52.143,10618.03855 +Oman,1977,1004533,Asia,57.367,11848.34392 +Oman,1982,1301048,Asia,62.728,12954.79101 +Oman,1987,1593882,Asia,67.734,18115.22313 +Oman,1992,1915208,Asia,71.197,18616.70691 +Oman,1997,2283635,Asia,72.499,19702.05581 +Oman,2002,2713462,Asia,74.193,19774.83687 +Oman,2007,3204897,Asia,75.64,22316.19287 +Pakistan,1952,41346560,Asia,43.436,684.5971438 +Pakistan,1957,46679944,Asia,45.557,747.0835292 +Pakistan,1962,53100671,Asia,47.67,803.3427418 +Pakistan,1967,60641899,Asia,49.8,942.4082588 +Pakistan,1972,69325921,Asia,51.929,1049.938981 +Pakistan,1977,78152686,Asia,54.043,1175.921193 +Pakistan,1982,91462088,Asia,56.158,1443.429832 +Pakistan,1987,105186881,Asia,58.245,1704.686583 +Pakistan,1992,120065004,Asia,60.838,1971.829464 +Pakistan,1997,135564834,Asia,61.818,2049.350521 +Pakistan,2002,153403524,Asia,63.61,2092.712441 +Pakistan,2007,169270617,Asia,65.483,2605.94758 +Panama,1952,940080,Americas,55.191,2480.380334 +Panama,1957,1063506,Americas,59.201,2961.800905 +Panama,1962,1215725,Americas,61.817,3536.540301 +Panama,1967,1405486,Americas,64.071,4421.009084 +Panama,1972,1616384,Americas,66.216,5364.249663 +Panama,1977,1839782,Americas,68.681,5351.912144 +Panama,1982,2036305,Americas,70.472,7009.601598 +Panama,1987,2253639,Americas,71.523,7034.779161 +Panama,1992,2484997,Americas,72.462,6618.74305 +Panama,1997,2734531,Americas,73.738,7113.692252 +Panama,2002,2990875,Americas,74.712,7356.031934 +Panama,2007,3242173,Americas,75.537,9809.185636 +Paraguay,1952,1555876,Americas,62.649,1952.308701 +Paraguay,1957,1770902,Americas,63.196,2046.154706 +Paraguay,1962,2009813,Americas,64.361,2148.027146 +Paraguay,1967,2287985,Americas,64.951,2299.376311 +Paraguay,1972,2614104,Americas,65.815,2523.337977 +Paraguay,1977,2984494,Americas,66.353,3248.373311 +Paraguay,1982,3366439,Americas,66.874,4258.503604 +Paraguay,1987,3886512,Americas,67.378,3998.875695 +Paraguay,1992,4483945,Americas,68.225,4196.411078 +Paraguay,1997,5154123,Americas,69.4,4247.400261 +Paraguay,2002,5884491,Americas,70.755,3783.674243 +Paraguay,2007,6667147,Americas,71.752,4172.838464 +Peru,1952,8025700,Americas,43.902,3758.523437 +Peru,1957,9146100,Americas,46.263,4245.256698 +Peru,1962,10516500,Americas,49.096,4957.037982 +Peru,1967,12132200,Americas,51.445,5788.09333 +Peru,1972,13954700,Americas,55.448,5937.827283 +Peru,1977,15990099,Americas,58.447,6281.290855 +Peru,1982,18125129,Americas,61.406,6434.501797 +Peru,1987,20195924,Americas,64.134,6360.943444 +Peru,1992,22430449,Americas,66.458,4446.380924 +Peru,1997,24748122,Americas,68.386,5838.347657 +Peru,2002,26769436,Americas,69.906,5909.020073 +Peru,2007,28674757,Americas,71.421,7408.905561 +Philippines,1952,22438691,Asia,47.752,1272.880995 +Philippines,1957,26072194,Asia,51.334,1547.944844 +Philippines,1962,30325264,Asia,54.757,1649.552153 +Philippines,1967,35356600,Asia,56.393,1814.12743 +Philippines,1972,40850141,Asia,58.065,1989.37407 +Philippines,1977,46850962,Asia,60.06,2373.204287 +Philippines,1982,53456774,Asia,62.082,2603.273765 +Philippines,1987,60017788,Asia,64.151,2189.634995 +Philippines,1992,67185766,Asia,66.458,2279.324017 +Philippines,1997,75012988,Asia,68.564,2536.534925 +Philippines,2002,82995088,Asia,70.303,2650.921068 +Philippines,2007,91077287,Asia,71.688,3190.481016 +Poland,1952,25730551,Europe,61.31,4029.329699 +Poland,1957,28235346,Europe,65.77,4734.253019 +Poland,1962,30329617,Europe,67.64,5338.752143 +Poland,1967,31785378,Europe,69.61,6557.152776 +Poland,1972,33039545,Europe,70.85,8006.506993 +Poland,1977,34621254,Europe,70.67,9508.141454 +Poland,1982,36227381,Europe,71.32,8451.531004 +Poland,1987,37740710,Europe,70.98,9082.351172 +Poland,1992,38370697,Europe,70.99,7738.881247 +Poland,1997,38654957,Europe,72.75,10159.58368 +Poland,2002,38625976,Europe,74.67,12002.23908 +Poland,2007,38518241,Europe,75.563,15389.92468 +Portugal,1952,8526050,Europe,59.82,3068.319867 +Portugal,1957,8817650,Europe,61.51,3774.571743 +Portugal,1962,9019800,Europe,64.39,4727.954889 +Portugal,1967,9103000,Europe,66.6,6361.517993 +Portugal,1972,8970450,Europe,69.26,9022.247417 +Portugal,1977,9662600,Europe,70.41,10172.48572 +Portugal,1982,9859650,Europe,72.77,11753.84291 +Portugal,1987,9915289,Europe,74.06,13039.30876 +Portugal,1992,9927680,Europe,74.86,16207.26663 +Portugal,1997,10156415,Europe,75.97,17641.03156 +Portugal,2002,10433867,Europe,77.29,19970.90787 +Portugal,2007,10642836,Europe,78.098,20509.64777 +Puerto Rico,1952,2227000,Americas,64.28,3081.959785 +Puerto Rico,1957,2260000,Americas,68.54,3907.156189 +Puerto Rico,1962,2448046,Americas,69.62,5108.34463 +Puerto Rico,1967,2648961,Americas,71.1,6929.277714 +Puerto Rico,1972,2847132,Americas,72.16,9123.041742 +Puerto Rico,1977,3080828,Americas,73.44,9770.524921 +Puerto Rico,1982,3279001,Americas,73.75,10330.98915 +Puerto Rico,1987,3444468,Americas,74.63,12281.34191 +Puerto Rico,1992,3585176,Americas,73.911,14641.58711 +Puerto Rico,1997,3759430,Americas,74.917,16999.4333 +Puerto Rico,2002,3859606,Americas,77.778,18855.60618 +Puerto Rico,2007,3942491,Americas,78.746,19328.70901 +Reunion,1952,257700,Africa,52.724,2718.885295 +Reunion,1957,308700,Africa,55.09,2769.451844 +Reunion,1962,358900,Africa,57.666,3173.72334 +Reunion,1967,414024,Africa,60.542,4021.175739 +Reunion,1972,461633,Africa,64.274,5047.658563 +Reunion,1977,492095,Africa,67.064,4319.804067 +Reunion,1982,517810,Africa,69.885,5267.219353 +Reunion,1987,562035,Africa,71.913,5303.377488 +Reunion,1992,622191,Africa,73.615,6101.255823 +Reunion,1997,684810,Africa,74.772,6071.941411 +Reunion,2002,743981,Africa,75.744,6316.1652 +Reunion,2007,798094,Africa,76.442,7670.122558 +Romania,1952,16630000,Europe,61.05,3144.613186 +Romania,1957,17829327,Europe,64.1,3943.370225 +Romania,1962,18680721,Europe,66.8,4734.997586 +Romania,1967,19284814,Europe,66.8,6470.866545 +Romania,1972,20662648,Europe,69.21,8011.414402 +Romania,1977,21658597,Europe,69.46,9356.39724 +Romania,1982,22356726,Europe,69.66,9605.314053 +Romania,1987,22686371,Europe,69.53,9696.273295 +Romania,1992,22797027,Europe,69.36,6598.409903 +Romania,1997,22562458,Europe,69.72,7346.547557 +Romania,2002,22404337,Europe,71.322,7885.360081 +Romania,2007,22276056,Europe,72.476,10808.47561 +Rwanda,1952,2534927,Africa,40,493.3238752 +Rwanda,1957,2822082,Africa,41.5,540.2893983 +Rwanda,1962,3051242,Africa,43,597.4730727 +Rwanda,1967,3451079,Africa,44.1,510.9637142 +Rwanda,1972,3992121,Africa,44.6,590.5806638 +Rwanda,1977,4657072,Africa,45,670.0806011 +Rwanda,1982,5507565,Africa,46.218,881.5706467 +Rwanda,1987,6349365,Africa,44.02,847.991217 +Rwanda,1992,7290203,Africa,23.599,737.0685949 +Rwanda,1997,7212583,Africa,36.087,589.9445051 +Rwanda,2002,7852401,Africa,43.413,785.6537648 +Rwanda,2007,8860588,Africa,46.242,863.0884639 +Sao Tome and Principe,1952,60011,Africa,46.471,879.5835855 +Sao Tome and Principe,1957,61325,Africa,48.945,860.7369026 +Sao Tome and Principe,1962,65345,Africa,51.893,1071.551119 +Sao Tome and Principe,1967,70787,Africa,54.425,1384.840593 +Sao Tome and Principe,1972,76595,Africa,56.48,1532.985254 +Sao Tome and Principe,1977,86796,Africa,58.55,1737.561657 +Sao Tome and Principe,1982,98593,Africa,60.351,1890.218117 +Sao Tome and Principe,1987,110812,Africa,61.728,1516.525457 +Sao Tome and Principe,1992,125911,Africa,62.742,1428.777814 +Sao Tome and Principe,1997,145608,Africa,63.306,1339.076036 +Sao Tome and Principe,2002,170372,Africa,64.337,1353.09239 +Sao Tome and Principe,2007,199579,Africa,65.528,1598.435089 +Saudi Arabia,1952,4005677,Asia,39.875,6459.554823 +Saudi Arabia,1957,4419650,Asia,42.868,8157.591248 +Saudi Arabia,1962,4943029,Asia,45.914,11626.41975 +Saudi Arabia,1967,5618198,Asia,49.901,16903.04886 +Saudi Arabia,1972,6472756,Asia,53.886,24837.42865 +Saudi Arabia,1977,8128505,Asia,58.69,34167.7626 +Saudi Arabia,1982,11254672,Asia,63.012,33693.17525 +Saudi Arabia,1987,14619745,Asia,66.295,21198.26136 +Saudi Arabia,1992,16945857,Asia,68.768,24841.61777 +Saudi Arabia,1997,21229759,Asia,70.533,20586.69019 +Saudi Arabia,2002,24501530,Asia,71.626,19014.54118 +Saudi Arabia,2007,27601038,Asia,72.777,21654.83194 +Senegal,1952,2755589,Africa,37.278,1450.356983 +Senegal,1957,3054547,Africa,39.329,1567.653006 +Senegal,1962,3430243,Africa,41.454,1654.988723 +Senegal,1967,3965841,Africa,43.563,1612.404632 +Senegal,1972,4588696,Africa,45.815,1597.712056 +Senegal,1977,5260855,Africa,48.879,1561.769116 +Senegal,1982,6147783,Africa,52.379,1518.479984 +Senegal,1987,7171347,Africa,55.769,1441.72072 +Senegal,1992,8307920,Africa,58.196,1367.899369 +Senegal,1997,9535314,Africa,60.187,1392.368347 +Senegal,2002,10870037,Africa,61.6,1519.635262 +Senegal,2007,12267493,Africa,63.062,1712.472136 +Serbia,1952,6860147,Europe,57.996,3581.459448 +Serbia,1957,7271135,Europe,61.685,4981.090891 +Serbia,1962,7616060,Europe,64.531,6289.629157 +Serbia,1967,7971222,Europe,66.914,7991.707066 +Serbia,1972,8313288,Europe,68.7,10522.06749 +Serbia,1977,8686367,Europe,70.3,12980.66956 +Serbia,1982,9032824,Europe,70.162,15181.0927 +Serbia,1987,9230783,Europe,71.218,15870.87851 +Serbia,1992,9826397,Europe,71.659,9325.068238 +Serbia,1997,10336594,Europe,72.232,7914.320304 +Serbia,2002,10111559,Europe,73.213,7236.075251 +Serbia,2007,10150265,Europe,74.002,9786.534714 +Sierra Leone,1952,2143249,Africa,30.331,879.7877358 +Sierra Leone,1957,2295678,Africa,31.57,1004.484437 +Sierra Leone,1962,2467895,Africa,32.767,1116.639877 +Sierra Leone,1967,2662190,Africa,34.113,1206.043465 +Sierra Leone,1972,2879013,Africa,35.4,1353.759762 +Sierra Leone,1977,3140897,Africa,36.788,1348.285159 +Sierra Leone,1982,3464522,Africa,38.445,1465.010784 +Sierra Leone,1987,3868905,Africa,40.006,1294.447788 +Sierra Leone,1992,4260884,Africa,38.333,1068.696278 +Sierra Leone,1997,4578212,Africa,39.897,574.6481576 +Sierra Leone,2002,5359092,Africa,41.012,699.489713 +Sierra Leone,2007,6144562,Africa,42.568,862.5407561 +Singapore,1952,1127000,Asia,60.396,2315.138227 +Singapore,1957,1445929,Asia,63.179,2843.104409 +Singapore,1962,1750200,Asia,65.798,3674.735572 +Singapore,1967,1977600,Asia,67.946,4977.41854 +Singapore,1972,2152400,Asia,69.521,8597.756202 +Singapore,1977,2325300,Asia,70.795,11210.08948 +Singapore,1982,2651869,Asia,71.76,15169.16112 +Singapore,1987,2794552,Asia,73.56,18861.53081 +Singapore,1992,3235865,Asia,75.788,24769.8912 +Singapore,1997,3802309,Asia,77.158,33519.4766 +Singapore,2002,4197776,Asia,78.77,36023.1054 +Singapore,2007,4553009,Asia,79.972,47143.17964 +Slovak Republic,1952,3558137,Europe,64.36,5074.659104 +Slovak Republic,1957,3844277,Europe,67.45,6093.26298 +Slovak Republic,1962,4237384,Europe,70.33,7481.107598 +Slovak Republic,1967,4442238,Europe,70.98,8412.902397 +Slovak Republic,1972,4593433,Europe,70.35,9674.167626 +Slovak Republic,1977,4827803,Europe,70.45,10922.66404 +Slovak Republic,1982,5048043,Europe,70.8,11348.54585 +Slovak Republic,1987,5199318,Europe,71.08,12037.26758 +Slovak Republic,1992,5302888,Europe,71.38,9498.467723 +Slovak Republic,1997,5383010,Europe,72.71,12126.23065 +Slovak Republic,2002,5410052,Europe,73.8,13638.77837 +Slovak Republic,2007,5447502,Europe,74.663,18678.31435 +Slovenia,1952,1489518,Europe,65.57,4215.041741 +Slovenia,1957,1533070,Europe,67.85,5862.276629 +Slovenia,1962,1582962,Europe,69.15,7402.303395 +Slovenia,1967,1646912,Europe,69.18,9405.489397 +Slovenia,1972,1694510,Europe,69.82,12383.4862 +Slovenia,1977,1746919,Europe,70.97,15277.03017 +Slovenia,1982,1861252,Europe,71.063,17866.72175 +Slovenia,1987,1945870,Europe,72.25,18678.53492 +Slovenia,1992,1999210,Europe,73.64,14214.71681 +Slovenia,1997,2011612,Europe,75.13,17161.10735 +Slovenia,2002,2011497,Europe,76.66,20660.01936 +Slovenia,2007,2009245,Europe,77.926,25768.25759 +Somalia,1952,2526994,Africa,32.978,1135.749842 +Somalia,1957,2780415,Africa,34.977,1258.147413 +Somalia,1962,3080153,Africa,36.981,1369.488336 +Somalia,1967,3428839,Africa,38.977,1284.73318 +Somalia,1972,3840161,Africa,40.973,1254.576127 +Somalia,1977,4353666,Africa,41.974,1450.992513 +Somalia,1982,5828892,Africa,42.955,1176.807031 +Somalia,1987,6921858,Africa,44.501,1093.244963 +Somalia,1992,6099799,Africa,39.658,926.9602964 +Somalia,1997,6633514,Africa,43.795,930.5964284 +Somalia,2002,7753310,Africa,45.936,882.0818218 +Somalia,2007,9118773,Africa,48.159,926.1410683 +South Africa,1952,14264935,Africa,45.009,4725.295531 +South Africa,1957,16151549,Africa,47.985,5487.104219 +South Africa,1962,18356657,Africa,49.951,5768.729717 +South Africa,1967,20997321,Africa,51.927,7114.477971 +South Africa,1972,23935810,Africa,53.696,7765.962636 +South Africa,1977,27129932,Africa,55.527,8028.651439 +South Africa,1982,31140029,Africa,58.161,8568.266228 +South Africa,1987,35933379,Africa,60.834,7825.823398 +South Africa,1992,39964159,Africa,61.888,7225.069258 +South Africa,1997,42835005,Africa,60.236,7479.188244 +South Africa,2002,44433622,Africa,53.365,7710.946444 +South Africa,2007,43997828,Africa,49.339,9269.657808 +Spain,1952,28549870,Europe,64.94,3834.034742 +Spain,1957,29841614,Europe,66.66,4564.80241 +Spain,1962,31158061,Europe,69.69,5693.843879 +Spain,1967,32850275,Europe,71.44,7993.512294 +Spain,1972,34513161,Europe,73.06,10638.75131 +Spain,1977,36439000,Europe,74.39,13236.92117 +Spain,1982,37983310,Europe,76.3,13926.16997 +Spain,1987,38880702,Europe,76.9,15764.98313 +Spain,1992,39549438,Europe,77.57,18603.06452 +Spain,1997,39855442,Europe,78.77,20445.29896 +Spain,2002,40152517,Europe,79.78,24835.47166 +Spain,2007,40448191,Europe,80.941,28821.0637 +Sri Lanka,1952,7982342,Asia,57.593,1083.53203 +Sri Lanka,1957,9128546,Asia,61.456,1072.546602 +Sri Lanka,1962,10421936,Asia,62.192,1074.47196 +Sri Lanka,1967,11737396,Asia,64.266,1135.514326 +Sri Lanka,1972,13016733,Asia,65.042,1213.39553 +Sri Lanka,1977,14116836,Asia,65.949,1348.775651 +Sri Lanka,1982,15410151,Asia,68.757,1648.079789 +Sri Lanka,1987,16495304,Asia,69.011,1876.766827 +Sri Lanka,1992,17587060,Asia,70.379,2153.739222 +Sri Lanka,1997,18698655,Asia,70.457,2664.477257 +Sri Lanka,2002,19576783,Asia,70.815,3015.378833 +Sri Lanka,2007,20378239,Asia,72.396,3970.095407 +Sudan,1952,8504667,Africa,38.635,1615.991129 +Sudan,1957,9753392,Africa,39.624,1770.337074 +Sudan,1962,11183227,Africa,40.87,1959.593767 +Sudan,1967,12716129,Africa,42.858,1687.997641 +Sudan,1972,14597019,Africa,45.083,1659.652775 +Sudan,1977,17104986,Africa,47.8,2202.988423 +Sudan,1982,20367053,Africa,50.338,1895.544073 +Sudan,1987,24725960,Africa,51.744,1507.819159 +Sudan,1992,28227588,Africa,53.556,1492.197043 +Sudan,1997,32160729,Africa,55.373,1632.210764 +Sudan,2002,37090298,Africa,56.369,1993.398314 +Sudan,2007,42292929,Africa,58.556,2602.394995 +Swaziland,1952,290243,Africa,41.407,1148.376626 +Swaziland,1957,326741,Africa,43.424,1244.708364 +Swaziland,1962,370006,Africa,44.992,1856.182125 +Swaziland,1967,420690,Africa,46.633,2613.101665 +Swaziland,1972,480105,Africa,49.552,3364.836625 +Swaziland,1977,551425,Africa,52.537,3781.410618 +Swaziland,1982,649901,Africa,55.561,3895.384018 +Swaziland,1987,779348,Africa,57.678,3984.839812 +Swaziland,1992,962344,Africa,58.474,3553.0224 +Swaziland,1997,1054486,Africa,54.289,3876.76846 +Swaziland,2002,1130269,Africa,43.869,4128.116943 +Swaziland,2007,1133066,Africa,39.613,4513.480643 +Sweden,1952,7124673,Europe,71.86,8527.844662 +Sweden,1957,7363802,Europe,72.49,9911.878226 +Sweden,1962,7561588,Europe,73.37,12329.44192 +Sweden,1967,7867931,Europe,74.16,15258.29697 +Sweden,1972,8122293,Europe,74.72,17832.02464 +Sweden,1977,8251648,Europe,75.44,18855.72521 +Sweden,1982,8325260,Europe,76.42,20667.38125 +Sweden,1987,8421403,Europe,77.19,23586.92927 +Sweden,1992,8718867,Europe,78.16,23880.01683 +Sweden,1997,8897619,Europe,79.39,25266.59499 +Sweden,2002,8954175,Europe,80.04,29341.63093 +Sweden,2007,9031088,Europe,80.884,33859.74835 +Switzerland,1952,4815000,Europe,69.62,14734.23275 +Switzerland,1957,5126000,Europe,70.56,17909.48973 +Switzerland,1962,5666000,Europe,71.32,20431.0927 +Switzerland,1967,6063000,Europe,72.77,22966.14432 +Switzerland,1972,6401400,Europe,73.78,27195.11304 +Switzerland,1977,6316424,Europe,75.39,26982.29052 +Switzerland,1982,6468126,Europe,76.21,28397.71512 +Switzerland,1987,6649942,Europe,77.41,30281.70459 +Switzerland,1992,6995447,Europe,78.03,31871.5303 +Switzerland,1997,7193761,Europe,79.37,32135.32301 +Switzerland,2002,7361757,Europe,80.62,34480.95771 +Switzerland,2007,7554661,Europe,81.701,37506.41907 +Syria,1952,3661549,Asia,45.883,1643.485354 +Syria,1957,4149908,Asia,48.284,2117.234893 +Syria,1962,4834621,Asia,50.305,2193.037133 +Syria,1967,5680812,Asia,53.655,1881.923632 +Syria,1972,6701172,Asia,57.296,2571.423014 +Syria,1977,7932503,Asia,61.195,3195.484582 +Syria,1982,9410494,Asia,64.59,3761.837715 +Syria,1987,11242847,Asia,66.974,3116.774285 +Syria,1992,13219062,Asia,69.249,3340.542768 +Syria,1997,15081016,Asia,71.527,4014.238972 +Syria,2002,17155814,Asia,73.053,4090.925331 +Syria,2007,19314747,Asia,74.143,4184.548089 +Taiwan,1952,8550362,Asia,58.5,1206.947913 +Taiwan,1957,10164215,Asia,62.4,1507.86129 +Taiwan,1962,11918938,Asia,65.2,1822.879028 +Taiwan,1967,13648692,Asia,67.5,2643.858681 +Taiwan,1972,15226039,Asia,69.39,4062.523897 +Taiwan,1977,16785196,Asia,70.59,5596.519826 +Taiwan,1982,18501390,Asia,72.16,7426.354774 +Taiwan,1987,19757799,Asia,73.4,11054.56175 +Taiwan,1992,20686918,Asia,74.26,15215.6579 +Taiwan,1997,21628605,Asia,75.25,20206.82098 +Taiwan,2002,22454239,Asia,76.99,23235.42329 +Taiwan,2007,23174294,Asia,78.4,28718.27684 +Tanzania,1952,8322925,Africa,41.215,716.6500721 +Tanzania,1957,9452826,Africa,42.974,698.5356073 +Tanzania,1962,10863958,Africa,44.246,722.0038073 +Tanzania,1967,12607312,Africa,45.757,848.2186575 +Tanzania,1972,14706593,Africa,47.62,915.9850592 +Tanzania,1977,17129565,Africa,49.919,962.4922932 +Tanzania,1982,19844382,Africa,50.608,874.2426069 +Tanzania,1987,23040630,Africa,51.535,831.8220794 +Tanzania,1992,26605473,Africa,50.44,825.682454 +Tanzania,1997,30686889,Africa,48.466,789.1862231 +Tanzania,2002,34593779,Africa,49.651,899.0742111 +Tanzania,2007,38139640,Africa,52.517,1107.482182 +Thailand,1952,21289402,Asia,50.848,757.7974177 +Thailand,1957,25041917,Asia,53.63,793.5774148 +Thailand,1962,29263397,Asia,56.061,1002.199172 +Thailand,1967,34024249,Asia,58.285,1295.46066 +Thailand,1972,39276153,Asia,60.405,1524.358936 +Thailand,1977,44148285,Asia,62.494,1961.224635 +Thailand,1982,48827160,Asia,64.597,2393.219781 +Thailand,1987,52910342,Asia,66.084,2982.653773 +Thailand,1992,56667095,Asia,67.298,4616.896545 +Thailand,1997,60216677,Asia,67.521,5852.625497 +Thailand,2002,62806748,Asia,68.564,5913.187529 +Thailand,2007,65068149,Asia,70.616,7458.396327 +Togo,1952,1219113,Africa,38.596,859.8086567 +Togo,1957,1357445,Africa,41.208,925.9083202 +Togo,1962,1528098,Africa,43.922,1067.53481 +Togo,1967,1735550,Africa,46.769,1477.59676 +Togo,1972,2056351,Africa,49.759,1649.660188 +Togo,1977,2308582,Africa,52.887,1532.776998 +Togo,1982,2644765,Africa,55.471,1344.577953 +Togo,1987,3154264,Africa,56.941,1202.201361 +Togo,1992,3747553,Africa,58.061,1034.298904 +Togo,1997,4320890,Africa,58.39,982.2869243 +Togo,2002,4977378,Africa,57.561,886.2205765 +Togo,2007,5701579,Africa,58.42,882.9699438 +Trinidad and Tobago,1952,662850,Americas,59.1,3023.271928 +Trinidad and Tobago,1957,764900,Americas,61.8,4100.3934 +Trinidad and Tobago,1962,887498,Americas,64.9,4997.523971 +Trinidad and Tobago,1967,960155,Americas,65.4,5621.368472 +Trinidad and Tobago,1972,975199,Americas,65.9,6619.551419 +Trinidad and Tobago,1977,1039009,Americas,68.3,7899.554209 +Trinidad and Tobago,1982,1116479,Americas,68.832,9119.528607 +Trinidad and Tobago,1987,1191336,Americas,69.582,7388.597823 +Trinidad and Tobago,1992,1183669,Americas,69.862,7370.990932 +Trinidad and Tobago,1997,1138101,Americas,69.465,8792.573126 +Trinidad and Tobago,2002,1101832,Americas,68.976,11460.60023 +Trinidad and Tobago,2007,1056608,Americas,69.819,18008.50924 +Tunisia,1952,3647735,Africa,44.6,1468.475631 +Tunisia,1957,3950849,Africa,47.1,1395.232468 +Tunisia,1962,4286552,Africa,49.579,1660.30321 +Tunisia,1967,4786986,Africa,52.053,1932.360167 +Tunisia,1972,5303507,Africa,55.602,2753.285994 +Tunisia,1977,6005061,Africa,59.837,3120.876811 +Tunisia,1982,6734098,Africa,64.048,3560.233174 +Tunisia,1987,7724976,Africa,66.894,3810.419296 +Tunisia,1992,8523077,Africa,70.001,4332.720164 +Tunisia,1997,9231669,Africa,71.973,4876.798614 +Tunisia,2002,9770575,Africa,73.042,5722.895655 +Tunisia,2007,10276158,Africa,73.923,7092.923025 +Turkey,1952,22235677,Europe,43.585,1969.10098 +Turkey,1957,25670939,Europe,48.079,2218.754257 +Turkey,1962,29788695,Europe,52.098,2322.869908 +Turkey,1967,33411317,Europe,54.336,2826.356387 +Turkey,1972,37492953,Europe,57.005,3450.69638 +Turkey,1977,42404033,Europe,59.507,4269.122326 +Turkey,1982,47328791,Europe,61.036,4241.356344 +Turkey,1987,52881328,Europe,63.108,5089.043686 +Turkey,1992,58179144,Europe,66.146,5678.348271 +Turkey,1997,63047647,Europe,68.835,6601.429915 +Turkey,2002,67308928,Europe,70.845,6508.085718 +Turkey,2007,71158647,Europe,71.777,8458.276384 +Uganda,1952,5824797,Africa,39.978,734.753484 +Uganda,1957,6675501,Africa,42.571,774.3710692 +Uganda,1962,7688797,Africa,45.344,767.2717398 +Uganda,1967,8900294,Africa,48.051,908.9185217 +Uganda,1972,10190285,Africa,51.016,950.735869 +Uganda,1977,11457758,Africa,50.35,843.7331372 +Uganda,1982,12939400,Africa,49.849,682.2662268 +Uganda,1987,15283050,Africa,51.509,617.7244065 +Uganda,1992,18252190,Africa,48.825,644.1707969 +Uganda,1997,21210254,Africa,44.578,816.559081 +Uganda,2002,24739869,Africa,47.813,927.7210018 +Uganda,2007,29170398,Africa,51.542,1056.380121 +United Kingdom,1952,50430000,Europe,69.18,9979.508487 +United Kingdom,1957,51430000,Europe,70.42,11283.17795 +United Kingdom,1962,53292000,Europe,70.76,12477.17707 +United Kingdom,1967,54959000,Europe,71.36,14142.85089 +United Kingdom,1972,56079000,Europe,72.01,15895.11641 +United Kingdom,1977,56179000,Europe,72.76,17428.74846 +United Kingdom,1982,56339704,Europe,74.04,18232.42452 +United Kingdom,1987,56981620,Europe,75.007,21664.78767 +United Kingdom,1992,57866349,Europe,76.42,22705.09254 +United Kingdom,1997,58808266,Europe,77.218,26074.53136 +United Kingdom,2002,59912431,Europe,78.471,29478.99919 +United Kingdom,2007,60776238,Europe,79.425,33203.26128 +United States,1952,157553000,Americas,68.44,13990.48208 +United States,1957,171984000,Americas,69.49,14847.12712 +United States,1962,186538000,Americas,70.21,16173.14586 +United States,1967,198712000,Americas,70.76,19530.36557 +United States,1972,209896000,Americas,71.34,21806.03594 +United States,1977,220239000,Americas,73.38,24072.63213 +United States,1982,232187835,Americas,74.65,25009.55914 +United States,1987,242803533,Americas,75.02,29884.35041 +United States,1992,256894189,Americas,76.09,32003.93224 +United States,1997,272911760,Americas,76.81,35767.43303 +United States,2002,287675526,Americas,77.31,39097.09955 +United States,2007,301139947,Americas,78.242,42951.65309 +Uruguay,1952,2252965,Americas,66.071,5716.766744 +Uruguay,1957,2424959,Americas,67.044,6150.772969 +Uruguay,1962,2598466,Americas,68.253,5603.357717 +Uruguay,1967,2748579,Americas,68.468,5444.61962 +Uruguay,1972,2829526,Americas,68.673,5703.408898 +Uruguay,1977,2873520,Americas,69.481,6504.339663 +Uruguay,1982,2953997,Americas,70.805,6920.223051 +Uruguay,1987,3045153,Americas,71.918,7452.398969 +Uruguay,1992,3149262,Americas,72.752,8137.004775 +Uruguay,1997,3262838,Americas,74.223,9230.240708 +Uruguay,2002,3363085,Americas,75.307,7727.002004 +Uruguay,2007,3447496,Americas,76.384,10611.46299 +Venezuela,1952,5439568,Americas,55.088,7689.799761 +Venezuela,1957,6702668,Americas,57.907,9802.466526 +Venezuela,1962,8143375,Americas,60.77,8422.974165 +Venezuela,1967,9709552,Americas,63.479,9541.474188 +Venezuela,1972,11515649,Americas,65.712,10505.25966 +Venezuela,1977,13503563,Americas,67.456,13143.95095 +Venezuela,1982,15620766,Americas,68.557,11152.41011 +Venezuela,1987,17910182,Americas,70.19,9883.584648 +Venezuela,1992,20265563,Americas,71.15,10733.92631 +Venezuela,1997,22374398,Americas,72.146,10165.49518 +Venezuela,2002,24287670,Americas,72.766,8605.047831 +Venezuela,2007,26084662,Americas,73.747,11415.80569 +Vietnam,1952,26246839,Asia,40.412,605.0664917 +Vietnam,1957,28998543,Asia,42.887,676.2854478 +Vietnam,1962,33796140,Asia,45.363,772.0491602 +Vietnam,1967,39463910,Asia,47.838,637.1232887 +Vietnam,1972,44655014,Asia,50.254,699.5016441 +Vietnam,1977,50533506,Asia,55.764,713.5371196 +Vietnam,1982,56142181,Asia,58.816,707.2357863 +Vietnam,1987,62826491,Asia,62.82,820.7994449 +Vietnam,1992,69940728,Asia,67.662,989.0231487 +Vietnam,1997,76048996,Asia,70.672,1385.896769 +Vietnam,2002,80908147,Asia,73.017,1764.456677 +Vietnam,2007,85262356,Asia,74.249,2441.576404 +West Bank and Gaza,1952,1030585,Asia,43.16,1515.592329 +West Bank and Gaza,1957,1070439,Asia,45.671,1827.067742 +West Bank and Gaza,1962,1133134,Asia,48.127,2198.956312 +West Bank and Gaza,1967,1142636,Asia,51.631,2649.715007 +West Bank and Gaza,1972,1089572,Asia,56.532,3133.409277 +West Bank and Gaza,1977,1261091,Asia,60.765,3682.831494 +West Bank and Gaza,1982,1425876,Asia,64.406,4336.032082 +West Bank and Gaza,1987,1691210,Asia,67.046,5107.197384 +West Bank and Gaza,1992,2104779,Asia,69.718,6017.654756 +West Bank and Gaza,1997,2826046,Asia,71.096,7110.667619 +West Bank and Gaza,2002,3389578,Asia,72.37,4515.487575 +West Bank and Gaza,2007,4018332,Asia,73.422,3025.349798 +Yemen Rep.,1952,4963829,Asia,32.548,781.7175761 +Yemen Rep.,1957,5498090,Asia,33.97,804.8304547 +Yemen Rep.,1962,6120081,Asia,35.18,825.6232006 +Yemen Rep.,1967,6740785,Asia,36.984,862.4421463 +Yemen Rep.,1972,7407075,Asia,39.848,1265.047031 +Yemen Rep.,1977,8403990,Asia,44.175,1829.765177 +Yemen Rep.,1982,9657618,Asia,49.113,1977.55701 +Yemen Rep.,1987,11219340,Asia,52.922,1971.741538 +Yemen Rep.,1992,13367997,Asia,55.599,1879.496673 +Yemen Rep.,1997,15826497,Asia,58.02,2117.484526 +Yemen Rep.,2002,18701257,Asia,60.308,2234.820827 +Yemen Rep.,2007,22211743,Asia,62.698,2280.769906 +Zambia,1952,2672000,Africa,42.038,1147.388831 +Zambia,1957,3016000,Africa,44.077,1311.956766 +Zambia,1962,3421000,Africa,46.023,1452.725766 +Zambia,1967,3900000,Africa,47.768,1777.077318 +Zambia,1972,4506497,Africa,50.107,1773.498265 +Zambia,1977,5216550,Africa,51.386,1588.688299 +Zambia,1982,6100407,Africa,51.821,1408.678565 +Zambia,1987,7272406,Africa,50.821,1213.315116 +Zambia,1992,8381163,Africa,46.1,1210.884633 +Zambia,1997,9417789,Africa,40.238,1071.353818 +Zambia,2002,10595811,Africa,39.193,1071.613938 +Zambia,2007,11746035,Africa,42.384,1271.211593 +Zimbabwe,1952,3080907,Africa,48.451,406.8841148 +Zimbabwe,1957,3646340,Africa,50.469,518.7642681 +Zimbabwe,1962,4277736,Africa,52.358,527.2721818 +Zimbabwe,1967,4995432,Africa,53.995,569.7950712 +Zimbabwe,1972,5861135,Africa,55.635,799.3621758 +Zimbabwe,1977,6642107,Africa,57.674,685.5876821 +Zimbabwe,1982,7636524,Africa,60.363,788.8550411 +Zimbabwe,1987,9216418,Africa,62.351,706.1573059 +Zimbabwe,1992,10704340,Africa,60.377,693.4207856 +Zimbabwe,1997,11404948,Africa,46.809,792.4499603 +Zimbabwe,2002,11926563,Africa,39.989,672.0386227 +Zimbabwe,2007,12311143,Africa,43.487,469.7092981 diff --git a/fig/04-intro-to-visualisation-rendered-ggplot-1.png b/fig/04-intro-to-visualisation-rendered-ggplot-1.png new file mode 100644 index 0000000000000000000000000000000000000000..8790ca330cb879df8ca1c0d325430504f0e236e5 GIT binary patch literal 4206 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 literal 0 HcmV?d00001 diff --git a/fig/04-intro-to-visualisation-rendered-ggplot-col-1.png b/fig/04-intro-to-visualisation-rendered-ggplot-col-1.png new file mode 100644 index 0000000000000000000000000000000000000000..62af0031a34ee375b348074cfdf4824f34ac5c46 GIT binary patch literal 8068 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 literal 0 HcmV?d00001 diff --git a/fig/04-intro-to-visualisation-rendered-ggplot-color-1.png b/fig/04-intro-to-visualisation-rendered-ggplot-color-1.png new file mode 100644 index 0000000000000000000000000000000000000000..f97555712edd49025cc684861318f521e059dc28 GIT binary patch literal 8899 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 literal 0 HcmV?d00001 diff --git a/fig/04-intro-to-visualisation-rendered-ggplot-colors-adapt-1.png b/fig/04-intro-to-visualisation-rendered-ggplot-colors-adapt-1.png new file mode 100644 index 0000000000000000000000000000000000000000..925691c2bde22c1793dc872d4d445e47dcaa7411 GIT binary patch literal 23301 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 literal 0 HcmV?d00001 diff --git a/fig/04-intro-to-visualisation-rendered-ggplot-coord-flip-1.png b/fig/04-intro-to-visualisation-rendered-ggplot-coord-flip-1.png new file mode 100644 index 0000000000000000000000000000000000000000..9e80765a41e7c02b6c4506cab47d706b0703e22e GIT binary patch literal 8790 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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/fig/relative_root.png b/fig/relative_root.png new file mode 100644 index 0000000000000000000000000000000000000000..c4abaf517dc5ceb5701f50fe5ce1f695fbd08fa4 GIT binary patch literal 22755 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 literal 0 HcmV?d00001 diff --git a/fig/rstudio_project_files.jpeg b/fig/rstudio_project_files.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..e6a62544543897605c5efb284dbe75cb6c7be7ff GIT binary patch literal 41926 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 bUH<(H{v(v~zqqpeGghbn*PcP~WBT6!hXs|9 literal 0 HcmV?d00001 diff --git a/md5sum.txt b/md5sum.txt index bcc52eea..4a40c5f3 100644 --- a/md5sum.txt +++ b/md5sum.txt @@ -1,9 +1,13 @@ "file" "checksum" "built" "date" "CODE_OF_CONDUCT.md" "c93c83c630db2fe2462240bf72552548" "site/built/CODE_OF_CONDUCT.md" "2024-01-29" "LICENSE.md" "b24ebbb41b14ca25cf6b8216dda83e5f" "site/built/LICENSE.md" "2024-01-29" -"config.yaml" "028c7064b7551cd3c219c613b7c76e13" "site/built/config.yaml" "2024-01-29" +"config.yaml" "82a1c8e73c4b092fea5eb33ca70ede08" "site/built/config.yaml" "2024-01-29" "index.md" "a02c9c785ed98ddd84fe3d34ddb12fcd" "site/built/index.md" "2024-01-29" "links.md" "8184cf4149eafbf03ce8da8ff0778c14" "site/built/links.md" "2024-01-29" +"episodes/01-intro-to-r.Rmd" "1aa988ee32900c64f01b86211bff50ee" "site/built/01-intro-to-r.md" "2024-01-29" +"episodes/02-data-structures.Rmd" "f931ec7c4389445e191c4242601a9e08" "site/built/02-data-structures.md" "2024-01-29" +"episodes/03-explore-data.Rmd" "e336f5c9503ce0e3339313803c3972d6" "site/built/03-explore-data.md" "2024-01-29" +"episodes/04-intro-to-visualisation.Rmd" "23119233131530bb32bc9b02c9365b90" "site/built/04-intro-to-visualisation.md" "2024-01-29" "episodes/09-open-and-plot-vector-layers.Rmd" "900c7db9496a39a783274f609025892d" "site/built/09-open-and-plot-vector-layers.md" "2024-01-29" "episodes/10-explore-and-plot-by-vector-layer-attributes.Rmd" "5922efcd00e3b2211c879db06b3cccf6" "site/built/10-explore-and-plot-by-vector-layer-attributes.md" "2024-01-29" "episodes/11-plot-multiple-shape-files.Rmd" "410e905a4512c289ca0e04786b6fb262" "site/built/11-plot-multiple-shape-files.md" "2024-01-29"