Learn R Programming

mpspline2 (version 0.1.9)

mpspline_one: Spline discrete soils data - single site

Description

This function implements the mass-preserving spline method of Bishop et al (1999) (tools:::Rd_expr_doi("10.1016/S0016-7061(99)00003-8")) for interpolating between measured soil attributes down a single soil profile.

Usage

mpspline_one(
  site = NULL,
  var_name = NULL,
  lam = 0.1,
  d = c(0, 5, 15, 30, 60, 100, 200),
  vlow = 0,
  vhigh = 1000
)

Value

A list with the following elements: Site ID, vector of predicted values over input intervals, vector of predicted values for each cm down the profile to max(d), vector of predicted values over d

(output) intervals, and root mean squared error.

Arguments

site

data frame containing data for a single soil profile. Column 1 must contain site identifiers. Columns 2 and 3 must contain upper and lower sample depths, respectively, measured in centimeters. Subsequent columns will contain measured values for those depths.

var_name

character or integer vector denoting the column(s) in site in which target data is stored. If not supplied, the fourth column of the input object is assumed to contain the target data.

lam

number; smoothing parameter for spline. Defaults to 0.1.

d

sequential integer vector; denotes the output depth ranges in cm. Defaults to c(0, 5, 15, 30, 60, 100, 200) after the GlobalSoilMap specification, giving output predictions over intervals 0-5cm, 5-15cm, etc.

vlow

numeric; constrains the minimum predicted value to a realistic number. Defaults to 0.

vhigh

numeric; constrains the maximum predicted value to a realistic number. Defaults to 1000.

Examples

Run this code
dat <- data.frame("SID" = c( 1,  1,  1,  1),
                   "UD" = c( 0, 20, 40, 60),
                   "LD" = c(10, 30, 50, 70),
                  "VAL" = c( 6,  4,  3, 10),
                   stringsAsFactors = FALSE)
mpspline_one(site = dat, var_name = 'VAL')

Run the code above in your browser using DataLab