oss.texture | R Documentation |
Use particle size analysis data to determine the texture class in the Canadian System of Soil Classification or USDA If sand fraction data is provided, modifiers (coarse, fine, very fine) will be assigned to the sands, loamy sands and sandy loams.
oss.texture(
sand,
silt,
clay,
vcs = NULL,
cs = NULL,
ms = NULL,
fs = NULL,
vfs = NULL,
tri = "CSSC"
)
sand |
numeric, sand (0.5 - 2 mm) content either in decimal or percentage (e.g. 0.25 or 25) |
silt |
numeric, silt (0.002 - 0.05 mm) content either in decimal or percentage (e.g. 0.25 or 25) |
clay |
numeric, clay (<0.002 mm) content either in decimal or percentage (e.g. 0.25 or 25) |
vcs |
numeric, very coarse sand (1 - 2 mm) content expressed as percentage of the sum of the sand fractions or portion of total sand |
cs |
numeric, coarse sand (0.5 - 1 mm) content expressed as percentage of the sum of the sand fractions or portion of total sand |
ms |
numeric, medium sand (0.25 - 0.50 mm) content expressed as percentage of the sum of the sand fractions or portion of total sand |
fs |
numeric, fine sand (0.10 - 0.25 mm) content expressed as percentage of the sum of the sand fractions or portion of total sand |
vfs |
numeric, very fine sand (0.05 - 0.10 mm) content expressed as percentage of the sum of the sand fractions or 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 texture class for a single observation without sand fractions
oss.texture(sand=67, silt=23, clay=10)
#Determine texture class for a single observation with sand fractions
oss.texture(sand=67, silt=23, clay=10, vcs=60, cs=10, ms=10, fs=10, vfs=10)
#Determine texture 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.texture,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 texture 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.texture,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.