The goal of the R-package formas
is to provide access to data from FORMAS, a Swedish government research council for sustainable development. This organization funds research and innovation, develops strategies, performs analyses and conducts evaluations. Areas of activity include the environment, agricultural sciences and spatial planning.
FORMAS provides open data through an API about projects funded starting from 2006. Data in the API is updated daily and may be used freely without fees or other restrictions. This R package uses this documented API to make data available for use from R.
Example
This is a basic example which shows you how to get data.
All data at once
library(formas)
library(dplyr)
all_projects <- formas_projects()
# total number of projects
nrow(all_projects)
#> [1] 7074
# available fields
names(all_projects)
#> [1] "diarienummer" "ärenderubrik" "ärenderubrikEngelska"
#> [4] "projektbeskrivning" "abstract" "nyckelord"
#> [7] "scbForskningsämneKod" "scbForskningsämneNamn" "formasÄmnesområde"
#> [10] "hållbarhetsmål" "diarienummerUtlysning" "utlysningTitel"
#> [13] "beviljatDatum" "projektStart" "projektSlut"
#> [16] "beviljatBidrag" "medelsförvaltareNamn" "medelsförvaltareOrgnr"
#> [19] "status" "ansökansId" "senastÄndrad"
# first few rows of latest changed projects
all_projects %>%
arrange(desc(`senastÄndrad`)) %>%
slice(1:3) %>% select(1:2, `senastÄndrad`, `beviljatBidrag`) %>%
knitr::kable()
diarienummer | ärenderubrik | senastÄndrad | beviljatBidrag |
---|---|---|---|
2019-02509 | Optimering i såglinjen via djupinlärning och multi-modal avbildning | 2022-11-28 | 2132000 |
2017-01006 | Ligninets roll för saprotrof nedbrytning av växtmaterial och genes av organiskt material i boreala jordar | 2022-11-25 | 2992383 |
2017-01596 | Modifiering av autofagi för hållbar bredspektrumresisten mot potatissjukdomar | 2022-11-25 | 2997999 |
Project details
Details for a specific project or changes from a date can also be retrieved:
# details for one specific identifier only
formas_project("2022-00327") %>% glimpse()
#> Rows: 1
#> Columns: 21
#> $ diarienummer <chr> "2022-00327"
#> $ ärenderubrik <chr> "Moderna vetenskapliga metoder kan besvara en 10…
#> $ ärenderubrikEngelska <chr> "Applying modern scientific methods to a century…
#> $ projektbeskrivning <chr> "För att svenskt skogsbruk ska utvecklas emot me…
#> $ abstract <chr> "The New EU Forest Strategy 2030, part of the Eu…
#> $ nyckelord <chr> "Alternative forestry methods; Mycorrhizal fungi…
#> $ scbForskningsämneKod <chr> "40104; 10611"
#> $ scbForskningsämneNamn <chr> " Skogsvetenskap; Ekologi"
#> $ formasÄmnesområde <chr> "Skogsbruk; Skogsforskning, övrigt; Ekologi"
#> $ hållbarhetsmål <chr> "15 Ekosystem och biologisk mångfald"
#> $ diarienummerUtlysning <chr> "2022-00049"
#> $ utlysningTitel <chr> "Årliga öppna utlysningen 2022"
#> $ beviljatDatum <chr> "2022-11-23T00:00:00"
#> $ projektStart <chr> "2023-01-01T00:00:00"
#> $ projektSlut <chr> "2027-12-31T00:00:00"
#> $ beviljatBidrag <int> 3996000
#> $ medelsförvaltareNamn <chr> "Sveriges lantbruksuniversitet"
#> $ medelsförvaltareOrgnr <chr> "202100-2817"
#> $ status <chr> "Öppen"
#> $ ansökansId <int> 10716608
#> $ senastÄndrad <chr> "2022-11-23T00:00:00"
# all changes since five days back
changes <- formas_projects_since(Sys.Date() - 5)
changes %>% select(1:2, `senastÄndrad`) %>% slice(1:5) %>% knitr::kable()
diarienummer | ärenderubrik | senastÄndrad |
---|---|---|
2017-01006 | Ligninets roll för saprotrof nedbrytning av växtmaterial och genes av organiskt material i boreala jordar | 2022-11-25 |
2017-01596 | Modifiering av autofagi för hållbar bredspektrumresisten mot potatissjukdomar | 2022-11-25 |
2018-00442 | En undersökning av styrelseformer genom ’landgrabbing’ av jordbruksmark | 2022-11-25 |
2018-00682 | Ökar inomarts mångfald resiliens av ålgräsängar till klimatförändringar och fluktuationer? | 2022-11-25 |
2018-00812 | Vattenkvalitet påverkar vattenbrist - inverkan av färskvattnets försaltning på vattenbrist i globala torrområden | 2022-11-25 |
Renaming fields
If you prefer to convert field names to something that better aligns with SweCRIS field names, you can try this approach:
all_projects %>% rename_fields()
#> # A tibble: 7,074 × 21
#> Id TitleSv TitleEn Descr…¹ Abstr…² Keywo…³ ScbIds Scbs Forma…⁴ SDGs
#> <chr> <chr> <chr> <chr> <chr> <chr> <chr> <chr> <chr> <chr>
#> 1 2006-00013 "Skoga… "Fores… "Dagen… "Today… <NA> <NA> <NA> <NA> <NA>
#> 2 2006-00029 "Ansök… "-" "Fakul… <NA> <NA> <NA> <NA> <NA> <NA>
#> 3 2006-00039 "Utbyt… "Excha… "I den… "In th… <NA> <NA> <NA> <NA> <NA>
#> 4 2006-00040 "2007 … "Trave… "Forsk… <NA> <NA> <NA> <NA> <NA> <NA>
#> 5 2006-00041 "Lab-b… "Lab-v… "Ansök… "Dear … <NA> <NA> <NA> <NA> <NA>
#> 6 2006-00042 "Delta… "Parti… "Inom … "Resul… <NA> <NA> <NA> <NA> <NA>
#> 7 2006-00049 "Works… "Works… "För a… "In or… <NA> <NA> <NA> <NA> <NA>
#> 8 2006-00053 "Reseb… "Appli… "Reseb… "Bilag… <NA> <NA> <NA> <NA> <NA>
#> 9 2006-00060 "Polit… "Polit… "Polit… "Proje… <NA> <NA> <NA> <NA> <NA>
#> 10 2006-00062 "Tundr… "Tundr… "Mosso… "Bryop… <NA> <NA> <NA> <NA> <NA>
#> # … with 7,064 more rows, 11 more variables: AnnouncementDate <chr>,
#> # AnnouncementTitle <chr>, AwardDate <dttm>, FundingsStartDate <date>,
#> # FundingsEndDate <date>, FundingsSek <int>,
#> # CoordinatingOrganisationName <chr>, CoordinatingOrganisationId <chr>,
#> # LastModified <chr>, Status <int>, ApplicationId <dttm>, and abbreviated
#> # variable names ¹Description, ²Abstract, ³Keywords, ⁴FormasSubjects
Composite fields as tables
Some fields contain multiple "; "
-separated values and these can be expanded into separate lookup tables.
tbls <- all_projects %>% formas_lookup_tables()
# we here also rename the fields
tbls %>% purrr::map(rename_fields)
#> $scbs
#> # A tibble: 9,478 × 3
#> Id scb_code scb_desc
#> <chr> <chr> <chr>
#> 1 2011-01770 40303 Klinisk vetenskap
#> 2 2011-01771 20102 Byggproduktion
#> 3 2011-01771 20103 Husbyggnad
#> 4 2011-01771 20104 Infrastrukturteknik
#> 5 2011-01773 40101 Jordbruksvetenskap
#> 6 2011-01773 40106 Markvetenskap
#> 7 2011-01774 20199 Annan samhällsbyggnadsteknik
#> 8 2011-01775 10615 Evolutionsbiologi
#> 9 2011-01776 50201 Nationalekonomi
#> 10 2011-01777 10611 Ekologi
#> # … with 9,468 more rows
#>
#> $keyw
#> # A tibble: 10,606 × 2
#> Id keywords
#> <chr> <chr>
#> 1 2015-10002 climate change
#> 2 2015-10002 tropical forests
#> 3 2015-10009 Flyktingmottaging
#> 4 2015-10009 Välfärdsstat
#> 5 2015-10009 Kommuner
#> 6 2016-00006 Lake Reservoirs
#> 7 2016-00006 Water Quality
#> 8 2016-00006 Monitoring Forecasts
#> 9 2016-00007 vattenrening
#> 10 2016-00007 biogeokemi
#> # … with 10,596 more rows
#>
#> $subj
#> # A tibble: 5,829 × 2
#> Id formas_subject
#> <chr> <chr>
#> 1 2009-00590 Skogsbruk
#> 2 2011-00055 Bebyggelse, övrigt
#> 3 2011-00072 Ekonomi
#> 4 2011-00074 Bebyggelse, övrigt
#> 5 2011-00075 Bygg och produktionsteknik
#> 6 2011-00117 Faunavård
#> 7 2011-00758 Miljövård
#> 8 2011-00761 Jordbruksforskning, övrigt
#> 9 2011-01473 Klimat- och atmosfärsforskning
#> 10 2011-01568 Faunavård
#> # … with 5,819 more rows
#>
#> $sdgs
#> # A tibble: 6,102 × 2
#> Id sdg
#> <chr> <chr>
#> 1 2017-00306 09 Hållbar industri, innovationer och infrastruktur
#> 2 2017-00306 11 Hållbara städer och samhällen
#> 3 2017-00308 09 Hållbar industri, innovationer och infrastruktur
#> 4 2017-00308 11 Hållbara städer och samhällen
#> 5 2017-00315 11 Hållbara städer och samhällen
#> 6 2017-00317 09 Hållbar industri, innovationer och infrastruktur
#> 7 2017-00317 11 Hållbara städer och samhällen
#> 8 2017-00323 08 Anständiga arbetsvillkor och ekonomisk tillväxt
#> 9 2017-00323 09 Hållbar industri, innovationer och infrastruktur
#> 10 2017-00323 11 Hållbara städer och samhällen
#> # … with 6,092 more rows
# at this point all_projects and tbls could be persisted to a database