{"cells":[{"metadata":{},"cell_type":"markdown","source":"A notebook for R users to load and recode the data."},{"metadata":{"_uuid":"051d70d956493feee0c6d64651c6a088724dca2a","_execution_state":"idle","trusted":true,"collapsed":true},"cell_type":"code","source":"library(parallel)\nlibrary(raster)\nlibrary(sf)\n\n## paths\nDATADIR <- \"/path/to/geocleflif/data\"\n\n## load data\ndfObsFR <- read.csv(file.path(DATADIR, \"observations/observations_fr_train.csv\"), sep=';')\ndfObsUS <- read.csv(file.path(DATADIR, \"observations/observations_us_train.csv\"), sep=';')\ndfEnv <- read.csv(file.path(DATADIR, \"pre-extracted/environmental_vectors.csv\"), sep=';')\ndfObsFR <- merge(dfObsFR, dfEnv, by='observation_id')\ndfObsUS <- merge(dfObsUS, dfEnv, by='observation_id')\ndfAlign <- read.csv(file.path(DATADIR, \"metadata/landcover_suggested_alignment.csv\"), sep=';')\n\n## as spatial\nsfObsFR <- st_as_sf(dfObsFR, coords=c('longitude', 'latitude'), crs=4326, agr='identity')\nsfObsUS <- st_as_sf(dfObsUS, coords=c('longitude', 'latitude'), crs=4326, agr='identity')\n\n## raster\n## raster files\nfpathLcover <- list.files(file.path(DATADIR, \"patches\"), pattern='landcover\\\\.tif$',\n                          recursive=TRUE, full.names=TRUE)\nfpathElev <- list.files(file.path(DATADIR, \"patches\"), pattern='altitude\\\\.tif$',\n                        recursive=TRUE, full.names=TRUE)\nfpathRecode <- paste0(substr(fpathLcover, 1, nchar(fpathLcover)-4), '_recoded.tif')\n\nstop(\"comment this stop() to recode rasters\")\n## raw raster recode\ndfAlign2 <- dfAlign[1:2]\nncores <- detectCores() - 4\ncl <- makeCluster(ncores)\nclusterExport(cl, c('fpathLcover', 'fpathRecode', 'dfAlign2'))\nclusterEvalQ(cl, library(raster))\nparLapply(cl, 1:length(fpathLcover), function(i) {\n    ## writeRaster, reclassify, & raster from raster library\n    writeRaster(reclassify(raster(fpathLcover[i]), dfAlign2),\n                filename=fpathRecode[i], overwrite=TRUE)\n})\nstopCluster(cl)\n","execution_count":null,"outputs":[]}],"metadata":{"kernelspec":{"name":"ir","display_name":"R","language":"R"},"language_info":{"name":"R","codemirror_mode":"r","pygments_lexer":"r","mimetype":"text/x-r-source","file_extension":".r","version":"3.6.3"}},"nbformat":4,"nbformat_minor":4}