Handle data in formats used by cancer centers in Sweden, both from 'INCA' (the current register platform, (see < http://www.incanet.se> for more information) and by the older register platform 'Rockan' (used in the Western and Northern part of the country). All variables are coerced to suitable classes based on their format. Dates (from various formats such as with missing month or day, with or without century prefix or with just a week number) are all recognized as dates and coerced to the ISO 8601 standard (Y-m-d). Boolean variables (internally stored either as 0/1 or "True"/"False"/blanks when exported) are coerced to logical. Variable names ending in '_Beskrivning' and '_Varde' will be character, and 'PERSNR' will be coerced (if possible) to a valid personal identification number 'pin' (by the 'sweidnumbr' package). The package also allow the user to interactively choose if a variable should be coerced into a potential format even though not all of its values might conform to the recognized pattern. It also contain a caching mechanism in order to temporarily store data sets with its newly decided formats in order to not rerun the identification process each time. And finally, it also include a mechanism to aid the documentation process connected to projects build on data from 'INCA'.
NOTE: This package is still in beta! Please report any issue!
Some INCA formats are strange!
c(0, 1, 0, 1, 0, 0)
c(NA, "True", NA, "True", NA, NA)
19470101000X(note the last "X")
The workflow of INCA today requires that you use a data frame "df" online but that you instead read in your data from disk offline. This force you to work either with different prescripts based on development stage, or to include an "if else"" clause identifying the current environment.
To work with register data often require good knowledge about form structure and access to register documentation, which must be found online.
incadata package will recognize all peculiarities above and will coerce all formats into reasonable ones. It will also:
idcolumn to data frames in order to always have an identification variable at hand (regardless if the data has none or one of PERSNR, PNR or PAT_ID)
Some learning resources in their recommended order. Note that these refer to the published CRAN version of the documentation. Please also confirm any uncertenties with the current development versions after installing the package from Bitbucket (documentation might differ heavily during the initial development and evaluation phase of the package).
# A stable version of the package can be installed from CRAN: install.packages("incadata") # The lates development version can be installed from Bitbucket: Set argument `build_vignettes = TRUE` to also build the vignettes linked above devtools::install_bitbucket("cancercentrum/incadata")