This repository contains all the files to build the FAOSTAT package.
Kindly ask questions and report issues on the gitlab issue page at: https://gitlab.com/paulrougieux/faostatpackage/-/issues You are more likely to get a meaningful answer to your question if you provide a reproducible example, including sample data, R code and output.
The package can be installed from CRAN:
install.packages("FAOSTAT")
To get the latest changes, install the development version via the following code.
remotes::install_gitlab(repo = "paulrougieux/faostatpackage/FAOSTAT")
Different versions can be installed by specifying the ref part of the repo argument
as such paulrougieux/faostatpackage/FAOSTAT@ref
.
A vignette and function documentation are available and please use them:
library(FAOSTAT)
vignette(topic = "FAOSTAT")
help(get_faostat_bulk)
help(read_fao)
The vignette is also visible on CRAN at https://cran.r-project.org/web/packages/FAOSTAT/vignettes/FAOSTAT.pdf
There are 2 ways to access FAOSTAT data:
The FAOSTAT packages provide two different functions
Example using the get_faostat_bulk()
function to load crop production data for all
products in all countries and all available years
# Create a folder to store the data
data_folder <- "data_raw"
dir.create(data_folder)
# Load crop production data
crop_production <- get_faostat_bulk(code = "QCL", data_folder = data_folder)
# Cache the file i.e. save the data frame in the serialized RDS format for faster load time later.
saveRDS(crop_production, "data_raw/crop_production_e_all_data.rds")
# Now you can load your local version of the data from the RDS file
crop_production <- readRDS("data_raw/crop_production_e_all_data.rds")
Example of the read_fao()
function to download data for a specific product in a
specific country from the API:
# Get data for Cropland (6620) Area (5110) in Antigua and Barbuda (8) in 2017
df = read_fao(area_codes = "8", element_codes = "5110", item_codes = "6620", year_codes = "2017")
# Load cropland area for a range of year
df = read_fao(area_codes = "106", element_codes = "5110", item_codes = "6620", year_codes = 2010:2020)
The FAOSTAT API on which this package was based has changed in 2017. As of 2020, The main interest of this package lies in the updated functions to search and download data from the FAOSTAT bulk download facility:
FAOsearch
get_faostat_bulk
read_fao
Look at the help of those functions and data sets for more information. Some functions might not work or give a depreciation warning.
There is also @muuankarski 's take on the FAOSTAT bulk download here: https://github.com/muuankarski/faobulk He also created functions to parse the FAOSTAT xml files and download data.