View source: R/oss.particle_size.R
oss.particle_size | R Documentation |
Use particle size analysis data to determine the particle size class in the Canadian System of Soil Classification or USDA If sand separates data is provided, these are considered in the classification. Sand, silt and clay must be provided in percentage and should sum to 100. Sand separates should sum to total sand.
oss.particle_size(
sand,
silt,
clay,
vcs = NULL,
cs = NULL,
ms = NULL,
fs = NULL,
vfs = NULL,
tri = "CSSC"
)
sand |
numeric, sand (0.5 - 2 mm) content in percentage |
silt |
numeric, silt (0.002 - 0.05 mm) content in percentage |
clay |
numeric, clay (<0.002 mm) content in percentage |
vcs |
numeric, very coarse sand (1 - 2 mm) content expressed as portion of total sand |
cs |
numeric, coarse sand (0.5 - 1 mm) content expressed as portion of total sand |
ms |
numeric, medium sand (0.25 - 0.50 mm) content expressed as portion of total sand |
fs |
numeric, fine sand (0.10 - 0.25 mm) content expressed as portion of total sand |
vfs |
numeric, very fine sand (0.05 - 0.10 mm) content expressed as portion of total sand |
tri |
character, current choices are "CSSC" for Canadian System of Soil Classification (default), or "USDA" for United States Department of Agriculture |
character
#Determine particle size class for a single observation without sand fractions
oss.particle_size(sand=67, silt=23, clay=10)
#Determine particle size class for a single observation with sand fractions
oss.particle_size(sand=67, silt=23, clay=10, vcs=60, cs=10, ms=10, fs=10, vfs=10)
#Determine particle size class for multiple observations without sand fractions
dat<- data.frame(sand=c(20,40,80), silt= c(15,30,10), clay= c(65,30,10),
vcs=c(10,10,10), cs=c(5,5,5), ms=c(5,5,5), fs=c(60,60,60), vfs=c(20,20,20))
mapply(oss.particle_size,sand=dat$sand, silt=dat$silt, clay=dat$clay,
vcs=dat$vcs, cs=dat$cs, ms=dat$ms, fs=dat$fs, vfs=dat$vfs)
#Determine particle size class for multiple observations without sand fractions
dat<- data.frame(sand=c(20,40,80), silt= c(15,30,10), clay= c(65,30,10))
mapply(oss.texture,sand=dat$sand, silt=dat$silt, clay=dat$clay)
#or return it as a new column in the data frame
dat$class<- mapply(oss.particle_size,sand=dat$sand, silt=dat$silt, clay=dat$clay)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.