Code Monkey home page Code Monkey logo

openrspat's Introduction

A highly motivated and passionate geoinformatician with over three years of working experience in the geospatial field. My research interests include geographic information science (GIS), remote sensing, cloud computing and data analytics.

openrspat's People

Contributors

ohm-np avatar

Watchers

 avatar

Forkers

rbhandari99

openrspat's Issues

Update the package version

Update the package version with some changes:

  • well executed download functions
  • well executed processing routines
  • technical details of how the package works
  • necessary vignettes

Progress track

Download functions

  • Terrestrial Ecoregions of the World (Ecoregion)
  • Terrestrial Ecoregions of the World (Biome)
  • Mangrove Gain and Loss
  • Carbon Balance
  • Copernicus Global Land Cover
  • World Pop Population Count
  • Terrain Ruggedness Index
  • Accessibility to Cities
  • Clay content in the soil
  • Climatic Variables (Temperature, Precipitation)
  • Drought indicator

create global functions

Create global function zonal_operation for following rasters processing:

  • Carbon balance
  • World pop - population count
  • Terrain Ruggedness Index
  • Clay content
  • Accessibility to cities
### rasters only
## routines [crop, mask, rasterize, zonal]
## required arguments [polygon object - sf, raster object - terra, rasterize column, zonal operation]

# create function
library("sf")
library("terra")
library("openRspat")
zonal_operation <- function(pol, rast, opn) {
  
  # transform crs of pol to area_proj()
  pol <- st_transform(pol,
                      "+proj=longlat +datum=WGS84 +no_defs")
  # convert sf to spatvector
  pol_v <- terra::vect(pol)
  print("to vect")
  # crop the raster
  crop <- terra::crop(rast,
                      pol_v)
  print("cropped")
  # mask the raster
  mask <- terra::mask(crop,
                      pol_v)
  print("masked")
  # get unique ID
  r_id <- pol_v$WDPA_PID %>%
    as.numeric()
  print("got id")
  # rasterize the polygon
  r <- terra::rasterize(pol_v,
                        mask,
                        r_id)
  print("rasterized")
  # compute zonal statistics
  z <- terra::zonal(mask, 
                    r,
                    fun=opn,
                    na.rm=T)
  print("zonal statistics")
  # return zonal statistics as data frame
  return(z)
}

pol <- read_sf("../wdpa_kfw_spatial_latinamerica_2021-02-01_supportedPAs_unique.gpkg")
rast <- rast("../../datalake/mapme.protectedareas/input/clay_content/clay_content_30_cm.tif")
opn <- 'mean'

x <- 
  zonal_operation(pol, rast, opn)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.