Version: 1.0.1
Date: 2025-03-27
Title: Functions and Datasets for Forest Biometrics and Modelling
Description: A system of functions and data aiming to apply quantitative analyses to forest ecology, silviculture and decision-support systems. Besides, the package helps to carry out data management, exploratory analysis, and model assessment.
License: GPL-3
URL: https://eljatib.com
Depends: R (≥ 3.5.0)
Imports: lattice, ggplot2, stats, graphics, datana
Suggests: foreign, gdata, car, agricolae, multcomp
Encoding: UTF-8
Language: en-US
RoxygenNote: 7.3.2
BuildResaveData: best
LazyData: true
LazyDataCompression: xz
NeedsCompilation: no
Packaged: 2025-03-31 05:50:30 UTC; christian
Author: Christian Salas-Eljatib ORCID iD [aut, cre], Pino Nicolas [ctb] (up to 2020), Riquelme Joaquin [ctb] (up to 2020)
Maintainer: Christian Salas-Eljatib <cseljatib@gmail.com>
Repository: CRAN
Date/Publication: 2025-04-01 16:20:05 UTC

Functions and Datasets for Forest Biometrics and Modelling

Description

The **biometrics** package aims to apply quantitative analyses to forest ecology, silviculture, and decision-support systems. Besides, the package helps to carry out data management, exploratory analysis, and model assessment.

The main goal of **biometrics** is to provide reliable mathematical procedures in a computing setting commonly used for quantitatively characterising trees and forests. As such, the package offers an array of functions that build summary description tables and graphs, such as stand tables and diameter distribution plots. Furthermore, the package has several data frames that help illustrate the application of the functions and teach topics related to forest ecology, silviculture, and forest biometrics. The package relies heavily on the work and teaching style of [Christian Salas-Eljatib](https://eljatib.com/).

Details

Notice that most of the available dataframes have a counterpart with column names in Spanish. For instance, the dataframe 'mortaforest' has column names in English, but 'mortaforest2' has column names in Spanish. Both data frames have the same data.

To see the preferable citation of the package, type citation("biometrics").

Author(s)

Christian Salas-Eljatib [aut, cre] (<https://orcid.org/0000-0002-8468-0829>), Pino Nicolas [ctb] (up to 2020), Riquelme Joaquin [ctb] (up to 2020)

Maintainer: Christian Salas-Eljatib <cseljatib@gmail.com>

Christian Salas-Eljatib is also indebted to several people who have contributed to individual data frames and functions: see credits in help pages.

References

- https://biometriaforestal.uchile.cl

- Salas-Eljatib C. 2021. Análisis de datos con el programa estadístico R: una introducción aplicada. Santiago, Chile: Ediciones Universidad Mayor. ISBN: 9789566086109. https://www.buscalibre.cl/libro-analisis-de-datos-con-el-programa-estadistico-r/9789566086109/p/53775485

Examples


##Scatter-plot and marginal histograms
data(popvol)
df <- popvol
hist(popvol$vol)


Mortality of lianas (vines) in tropical forests

Description

This study is part of the project "Diversity and dynamics of vascular epiphytes in Colombian Andes" supported by COLCIENCIAS (contract 2115-2013). The data corresponds to the first large-scale assessment of vascular epiphyte mortality in the neotropics. Based on two consecutive annual surveys, we followed the fate of 4247 epiphytes to estimate the epiphyte mortality rate on 116 host trees at nine sites. Additional variables were taken from the area of study in order to find relationships with epiphyte mortality.

Usage

data(deadlianas)

Format

The data frame contains four variables as follows:

PlotSite

Municipality name of the 9 study sites

Y.Plot

Latitude of the plot in decimal degrees

X.Plot

Longitude of the plot in decimal degrees

PhoroNo

ID number of the sampled host trees in each site

EpiFam

Epiphyte taxonomic family

EpiGen

Epiphyte taxonomic genus

cf.aff

Abbreviations of Latin terms in the context of taxonomy. cf. "confer" meaning "compare with". aff.: "affinis" meaning "similar to".

Species

Epiphyte (morpho) species name

Author

Author of the scientific name

EpiAzi

Azimuth of the epiphyte individual on each host tree

BraAzi

Azimuth of the branch in which the epiphyte individual was found

EpiDisTru

Distance in meters from the trunk to the epiphyte attachment site on a branch

EpiSize

Estimated size of the epiphyte individual, in cm.

EpiAttHei

Epiphyte attachment height in meters

Date0

Date of the first census

Date1

Date of the final census

Location

Section (roots, trunks, branches) of the host tree in which theepiphyte individual was found

Mortality

Dichotomous variable. 0 if the epiphyte individual was dead in the final census and 1 if otherwise

MorCat

Mechanical or non-mechanical cause of mortality

Elevation

Elevation (m a.s.l.) of the plot

AP_bio12

Annual precipitation in the plot (mm yr-1)

PDM_bio14

Precipitation of driest month in the plot (mm)

PS_bio15

Precipitation seasonality in the plot (coefficient of variation)

MDT_bio2

Mean Diurnal Range (Mean of monthly (max temp - min temp)) in the plot (oC*10)

TS_bio4

Temperature seasonality in the plot (standard deviation*100)

ATR_bio7

Annual temperature range in the plot (10 celsius degrees)

AET

Actual evapotranspiration in the plot (mm yr-1)

BasAre

Basal area of trees with DBH major or equal to 5 cm (AB) in the plot (m^{2}/ha)

BasAre5_10

Basal area of trees with greater or equal than 5 DBH and less than 10 cm in the plot (m^{2}/ha)

BasAre10

Basal area of trees with greater or equal than 10 cm DBH in the plot (m^{2}/ha)

Ind10

Number of canopy trees (with greater or equal than 10 cm DBH ) in the plot

Ind5

Number of understory trees (with greater or equal than 5 DBH and less than 10 cm) in the plot

Ind5_10

Number of trees with greater or equal than 5 DBH and less than 10 cm in the plot

Ind10_15

Number of trees with greater or equal than 10 DBH and less than 15 cm in the plot

Ind15_20

Number of trees with greater or equal than 15 DBH and less than 20 cm in the plot

Ind20_25

Number of trees with greater or equal than 20 DBH and less than 25 cm in the plot

Ind25_30

Number of trees with greater or equal than 25 DBH and less than 30 cm in the plot

Ind30

Number of trees with DBH major or equal to 30 cm in the plot

TreeHei

Total tree height in meters

MedHei

Median height of trees in each plot

MaxHei

Maximum height of trees in each plot

BranchNumb

Number of branches of the host tree

Obs

Observations and notes in Spanish

Source

Data were retrieved from the DRYAD repository at doi:10.5061/dryad.g5510.

References

Zuleta D, Benavides AM, Lopez-Rios V, Duque A. 2016. Local and regional determinants of vascular epiphyte mortality in the Andean mountains of Colombia. Journal of Ecology 104(3): 841-843. doi:10.1111/1365-2745.12563

Examples

data(deadlianas)    
head(deadlianas) 

Datos de mortalidad de lianas en árboles tropicales

Description

Los datos provienen de un estudio que fue parte del proyecto "Diversidad y dinámica de epífitas vasculares en los Andes colombianos". apoyado por COLCIENCIAS (contrato 2115-2013). Este conjunto de datos tiene 43 columnas y 4247 filas. Cada fila corresponde a un individuo epifito ubicado en secciones confiables de los árboles hospedantes Los datos corresponden a la primera gran escala evaluación de la mortalidad de epífitas vasculares en los neotrópicos. Basado en dos encuestas anuales consecutivas, Seguimos el destino de 4247 epífitas para estimar la tasa de mortalidad de epífitas en 116 árboles hospedantes. en nueve sitios. Se tomaron variables adicionales del area de estudio para encontrar relaciones con mortalidad de epifitas.

Usage

data(deadlianas2)

Format

Variables se describen a continuación::

PlotSite

Nombre del municipio de los 9 sitios de estudio.

Y.Plot

Latitud del grafico en grados decimales.

X.Plot

Longitud de la grafica en grados decimales.

PhoroNo

número de identificacion de los árboles hospedantes muestreados en cada sitio

EpiFam

Familia taxonomica de epifitas.

EpiGen

Genero taxonomico de epifitas.

cf.aff

Abreviaturas de terminos latinos en el contexto de la taxonomia. cf. "conferir" que significa "comparar con". aff .: "affinis" que significa "similar a".

Species

Nombre de la especie epifita (morfo)

Author

Autor del nombre científico.

EpiAzi

Azimut del individuo epifito en cada árbol huesped.

BraAzi

Azimut de la rama en la que se encontro el individuo epifito.

EpiDisTru

Distancia en metros desde el tronco hasta el sitio de union de la epifita en una rama.

EpiSize

Tamaño estimado del individuo epifito en centimetros.

EpiAttHei

Altura del accesorio de la epifita en metros.

Date0

Fecha del primer censo.

Date1

Fecha del censo final.

Location

Seccion (raices, troncos, ramas) del árbol anfitrion en el que se encontro el individuo epifito.

Mortality

Variable dicotomica. 0 si el individuo epifito estaba muerto en el censo final y 1 si no.

MorCat

Causa de mortalidad mecanica o no mecánica.

Elevation

Elevacion (msnm) de la parcela.

AP_bio12

Precipitación anual en la parcela, en mm.

PDM_bio14

Precipitación del mes más seco en la parcela, en mm.

PS_bio15

Estacionalidad de la precipitacion en la parcela (coeficiente de variacion)

MDT_bio2

Rango diurno medio (Media mensual (temperatura maxima - temperatura minima)) en la grafica (10 grados celsius)

TS_bio4

Estacionalidad de la temperatura en la grafica (desviacion estandar * 100)

ATR_bio7

Rango de temperatura anual en la parcela (10 grados centigrados)

AET

Evapotranspiración anual en la parcela, en mm.

BasAre

Area basal de árboles con DAP mayor o igual a 5 cm en la parcela, en m^{2}/ha.

BasAre5_10

Area basal de árboles con DAP mayor o igual a 5 y menor a 10 cm en la parcela (m^{2}/ha)

BasAre10

Area basal de árboles con DAP mayor o igual a 10 cm en la parcela (m^{2}/ha)

Ind10

Número de árboles del dosel (con un DAP superior o igual a 10 cm) en la parcela

Ind5

Número de árboles de sotobosque (con DAP mayor o igual a 5 y menor a 10 cm) en la parcela

Ind5_10

Número de árboles con un DAP mayor o igual a 5 y menos de 10 cm en la parcela

Ind10_15

Número de árboles con un DAP mayor o igual a 10 y menos de 15 cm en la parcela

Ind15_20

Número de árboles con un DAP mayor o igual a 15 y menos de 20 cm en la parcela

Ind20_25

Número de árboles con un DAP mayor o igual a 20 y menos de 25 cm en la parcela

Ind25_30

Número de árboles con un DAP mayor o igual a 25 y menos de 30 cm en la parcela

Ind30

Número de árboles con DAP mayor o igual a 30 cm en la parcela

TreeHei

Altura total del árbol en metros

MedHei

Altura media de los árboles en cada parcela

MaxHei

Altura maxima de los árboles en cada parcela

BranchNumb

Número de ramas del árbol anfitrion

Obs

Observaciones y notas en español

Source

Los datos fueron obtenidos desde el repositorio DRYAD doi:10.5061/dryad.g5510.

References

Zuleta D, Benavides AM, Lopez-Rios V, Duque A. 2016. Local and regional determinants of vascular epiphyte mortality in the Andean mountains of Colombia. Journal of Ecology 104(3): 841-843. doi:10.1111/1365-2745.12563

Examples

data(deadlianas2)    
head(deadlianas2) 

Function to compute the dominant stand-level variable based on a sample plot data.

Description

Computes the so-called dominant stand-level variable, corresponding to the average of a tree-level variable for the 100 largest sorting-tree-level diameter trees in 1-ha.

Usage

domvar(
  data = data,
  var.int = var.int,
  var.sort = var.sort,
  plot.area = plot.area
)

Arguments

data

data frame having the tree list of a sample plot.

var.int

column name with the tree-level variable of interest (e.g., height).

var.sort

column name with the tree-level variable for defining the

plot.area

column name having the plot area, in square meters.

Details

The original function was written by Dr Oscar García for computing top height, and the corresponding reference is provided. Nevertheless, several changes were applied, thus the current function provide a broader application. Regardless, the function aims to calculate a "dominant" stand-level variable by taking into account the plot area. Thus, requires having a dataframe having both the variable of interest (e.g., height) and the sorting variable used for the computation (e.g., diameter) for all trees in a sample plot, as well as, the plot area.

Value

The main output is the calculated dominant stand-variable for the given sample plot.

Author(s)

Christian Salas-Eljatib.

References

- Garcia O, Batho A. 2005. Top height estimation in lodgepole pine sample plots. Western Journal of Applied forestry 20(1):64-68.

Examples


##Creates a fake dataframe
set.seed(45)
x <- round(rnorm(20,mean=45,sd=10),1); y=round(1.3+35*(1-exp(-.07*x)),1)
df<-data.frame(dap=x,atot=y)
head(df)
datana::descstat(df)
##Using the domvar function
domvar(data=df,var.int="atot",var.sort="dap",plot.area=500)

Computes basal area of any given tree

Description

Computes basal area of any given tree. Actually provides the area for a given circle of radius x.

Usage

gtree(x, in.m2)

Arguments

x

is the vector having tree diameter, in cm

in.m2

is an indicator variable: 1 to obtain the result in m2 if x was measured in cm; and 0 to obtain the resulting area in the same units of x.

Details

No details are given

Value

The value of basal area.

Author(s)

Christian Salas-Eljatib

Examples


#Creating an example dataframe
dbh<- round(rnorm(4,25,20),1);
#Using the function
in.m2=1
gtree(dbh,in.m2)


Linear interpolation for three data of x and y only works if the first y is missing.

Description

Linear interpolation

Usage

interp.a(xs, ys)

Arguments

xs

Vector number of size 3

ys

Vector number of size 3, with first position empty or NA

Details

Linear interpolation for three data of x and y only works if the first y is missing.

Value

Output description (simple).

Author(s)

Christian Salas.

Examples

x<-c(1,2,3)
y<-c(NA,4,6)
interp.a(x,y)

Linear interpolation for three data of x and y only works if the second y is missing.

Description

Linear interpolation

Usage

interp.b(xs, ys)

Arguments

xs

Vector number of size 3

ys

Vector number of size 3, with second position empty or NA

Details

Linear interpolation for three data of x and y only works if the second y is missing.

Value

Output description (simple).

Author(s)

Christian Salas.

Examples

x<-c(1,2,3)
y<-c(4,NA,6)
interp.b(x,y)

Tree spatial coordinates in a large sample plot in Fennoscandia

Description

Data from a large (8.8 ha) fully mapped plot in a Norway spruce (Picea abies) dominated old-growth forest in the subarctic region of Fennoscandia.

Usage

data(largeplot)

Format

Contains Cartesian position of trees and other variables in a large sample plot, as follows:

tree

Tree ID.

spp.code

Species code as follows: 1=Pinus sylvestris,2=Picea abies,3=Betula pubescens, 5=Salix caprea, 8: Sorbus aucuparia.

x.coord

Cartesian position in the X-axis, in m.

y.coord

Cartesian position in the Y-axis, in m.

status

Measurement year.

dbh

Diameter at breast-height, in cm.

toth

Total height, in m.

Source

Data were retrieved from the paper cited below, where several details might be worth reading.

References

- Pouta P, Kulha N, Kuuluvainen T, Aakala T. 2022. Partitioning of space among trees in an old-growth spruce forest in subarctic Fennoscandia. Frontiers in Forests and Global Change 5: 817248. doi:10.3389/ffgc.2022.817248

Examples

data(largeplot)    
head(largeplot)
df<-largeplot
pine <- df[df$spp.code==1,]
spruce <- df[df$spp.code==2,]
birch <- df[df$spp.code==3,]
plot(spruce$x.coord,spruce$y.coord,cex=(spruce$dbh)/30,col="blue")
points(birch$x.coord,birch$y.coord,cex=(birch$dbh)/30,col="green")
points(pine$x.coord,pine$y.coord,cex=(pine$dbh)/30,col="red")

Data contains climatic, forest structure and forest mortality variable

Description

The data file contains one row per unique 3.5km grid cell by year combination. The data frame covers all grid cells within the state of California where at least one Aerial Detection Survey (ADS) flight was taken between 2009 and 2015, so each grid cell position has between 1 and 7 years of data (reflected as 1 to 7 rows in the data file per grid cell position). The main response variables are mort.bin (presence of any mortality) and mort.tph (number of dead trees/ha within the given grid cell by year).

Usage

data(mortaforest)

Format

The data frame contains four variables as follows:

live.bah

Live basal area from the GNN dataset

live.tph

Live trees per hectare from the GNN dataset

pos.x

rank-order x-position of the grid cell (position 1 is western-most)

pos.y

rank-order y-position of the grid cell (position 1 is northern-most)

alb.x

x-coordinate of the grid cell centroid in California Albers (EPSG 3310)

alb.y

y-coordinate of the grid cell centroid in California Albers (EPSG 3310)

mort.bin

1= dead trees observed in grid cell. 0= no dead trees observed

mort.tph

Dead trees per hectare from the aggregated ADS dataset

mort.tpa

Dead trees per acre from the aggregated ADS dataset

year

Year of the ADS flight. Most flights occurred from May-August.

Defnorm

Mean annual climatic water deficit for the grid cell, for Oct 1-Sept 31 water year, averaged from 1981-2015

Def0

Climatic water deficit for the grid cell during the Oct-Sept water year overlapping the summer ADS flight of the given year

Defz0

Z-score for climatic water deficit for the given grid cell/water year. Calculated as (Def0-Defnorm)/(standard deviation in deficit among all years 1981-2015 for the given grid cell)

Defz1

Z-score for climatic water deficit for the given grid cell in the preceeding water year.

Defz2

Z-score for climatic water deficit for the given grid cell two water years prior.

Tz0

Z-score for temperature for the given grid cell/year.

Pz0

Z-score for precipitation for the given grid cell/year.

Defquant

FDCI variable. Quantile of Defnorm of the given grid cell, relative to the Defnorm of all other grid cells with a basal area within 2.5 m^{2}/ha of the given cell is basal area.

Source

The data were obtained from the DRYAD repository doi:10.5061/dryad.7vt36

References

- Young DJN, Stevens JS, Earles JM, Moore J, Ellis A, Jirka AM, Latimer ML. 2017. Long-term climate and competition explain forest mortality patterns under extreme drought. Ecology Letters 20(1):78-86. doi:10.1111/ele.12711 -Salas-Eljatib C, Fuentes-Ramírez A, Gregoire TG, Altamirano A, Yaitul V. A study on the effects of unbalanced data when fitting logistic regression models in ecology. Ecological Indicators 85:502-508. doi:10.1016/j.ecolind.2017.10.030

Examples

data(mortaforest)    
head(mortaforest) 

Mortalidad en bosques, y variables climaticas y de estructura forestal en California (USA).

Description

El archivo de datos contiene una fila por combinacion unica de celda de cuadricula de 3,5 km por año. El marco de datos cubre todas las celdas de la cuadricula dentro del estado de California donde se tomo al menos un vuelo de la Encuesta de deteccion aerea (ADS) entre 2009 y 2015, por lo que cada posicion de celda de la cuadricula tiene entre 1 y 7 años de datos (reflejados como 1 a 7 filas en el archivo de datos por posicion de celda de cuadricula). Las principales variables de respuesta son mort.bin (presencia de alguna mortalidad) y mort.tph (número de árboles muertos /ha dentro de la celda de la cuadricula por año).

Usage

data(mortaforest2)

Format

Las variables se describen a continuación::

live.bah

Área basal viva del conjunto de datos GNN

live.tph

Árboles vivos por hectarea del conjunto de datos GNN

pos.x

Posición X del orden de clasificacion de la celda de la cuadricula (la posición 1 es la mas occidental)

pos.y

Posición Y del orden de clasificacion de la celda de la cuadricula (la posición 1 es la mas al norte)

alb.x

Coordenada X del centroide de la celda de la cuadricula en California Albers (EPSG 3310)

alb.y

Coordenada Y del centroide de la celda de la cuadricula en California Albers (EPSG 3310)

mort.bin

Codificación para identificar mortalidad. 1 = árboles muertos observados en la celda de la cuadricula. 0 = no se observaron árboles muertos

mort.tph

Árboles muertos por hectarea del conjunto de datos ADS agregado

mort.tpa

Árboles muertos por acre del conjunto de datos ADS agregado

year

año del vuelo de ADS. La mayoría de los vuelos se realizaron entre mayo y agosto

Defnorm

Deficit hidrico climatico anual medio para la celda de la cuadricula, para el año hidrico del 1 de octubre al 31 de septiembre, promediado de 1981 a 2015

Def0

Deficit de agua climatica para la celda de la cuadricula durante el año hidrologico de octubre a septiembre que se superpone al vuelo ADS de verano del año dado

Defz0

Puntaje Z para el deficit hidrico climatico para la celda de cuadricula / año hidrico dado. Calculado como (Def0-Defnorm) / (desviacion estandar en el deficit entre todos los años 1981-2015 para la celda de la cuadricula dada

Defz1

Puntuacion Z para el deficit h?drico climatico para la celda de la cuadricula dada en el año hidrologico anterior.

Defz2

Puntuacion Z para el deficit hidrico climatico para la celda de la cuadricula dada dos años antes.

Tz0

Puntaje Z para la temperatura para la celda de cuadricula / año dado.

Pz0

Puntaje Z para la precipitacion para la celda / año de la cuadricula dado.

Defquant

Variable FDCI. Cuantil de Defnorm de la celda de la cuadricula dada, en relacion con la Defnorm de todas las demas celdas de la cuadricula con un area basal dentro de 2.5 m^{2}/ha de la celda dada

Source

Los datos fueron obtenidos desde el repositorio DRYAD en doi:10.5061/dryad.7vt36

References

- Young DJN, Stevens JS, Earles JM, Moore J, Ellis A, Jirka AM, Latimer ML. 2017. Long-term climate and competition explain forest mortality patterns under extreme drought. Ecology Letters 20(1):78-86. doi:10.1111/ele.12711 - Salas-Eljatib C, Fuentes-Ramírez A, Gregoire TG, Altamirano A, and Yaitul V. 2018. A study on the effects of unbalanced data when fitting logistic regression models in ecology. Ecological Indicators 85:502-508. doi:10.1016/j.ecolind.2017.10.030

Examples

data(mortaforest2)    
head(mortaforest2) 

Extract the n-th element from a list

Description

Extract the n-th element from a list

Usage

nele.list(lst, n)

Arguments

lst

is the list object

n

is the position of the element in the list to be retrieved

Value

object with elements of each list

Author(s)

Christian Salas-Eljatib

Examples

x <- list(list("z","x","y"), list(3,4,99,23,45), list(1,67,5,6,89))
nele.list(x,1)
nele.list(x,2)
nele.list(x,3)


Maximum plant size in the Hawaiian archipelago.

Description

Maximum plant size of 58 tree species, shrub and tree fern species that occur in 530 forest plots across the Hawaiian archipelago.

Usage

data(plantshawaii)

Format

Contains six columns, as follows:

species

Genus and epithet of the species.

family

Family of each species.

native.status

Categorical variable ('native', 'alien', 'uncertain') indicating alien status of each individual following Wagner et al. (2005).

n

Number of individuals used to estimate maximum plant size.

d95

Maximum plant size, estimated as D950.1 (King et al. 2006).

dmax3

Maximum plant size, estimated as Dmax3 (King et al. 2006).

Source

The data were obtained from the DRYAD repository at doi:10.5061/dryad.1kk02qr.

References

- Craven D, Knight T, Barton K, Bialic-Murphy L, Cordell S, Giardina C, Gillespie T, Ostertag R, Sack L,Chase J. 2018. OpenNahele: the open Hawaiian forest plot database. Biodiversity Data Journal 6: e28406.

Examples

data(plantshawaii)    
head(plantshawaii) 
tapply(plantshawaii$d95,plantshawaii$native.status,summary)

Population of stand-volume for 400 elements.

Description

A list of elements containing stand-volume (in m^{3}/ha) values measured in sample plots. Thus, the population size is 400, and the random variable is forest volume. The values were digitized from the book of Zohrer (1980).

Usage

data(popvol)

Format

Contains two variables, as follows:

id

Plot number, or ID.

vol

Stand volume, in m^{3}/ha

Source

Population data of forest volume. Each row represents a plot, and their respective measured standing trees volume. Data from Zhorer (1980).

References

- Zohrer F. 1980. Forstinventur. Ein Leitfaden fur Studium und Praxis. Pareys Studientexte Nr. 26. Parey. Berlin, Germany. 207

Examples

data(popvol)    
sum(popvol$vol) 
mean(popvol$vol) 
hist(popvol$vol)

Computes the quadratic mean diameter of a sample plot.

Description

This function computes the quadratic mean diameter of a sample plot.

Usage

qmd(tph = tph, gha = gha)

Arguments

tph

is tree density, in trees/ha;

gha

is basal area, in m2/ha

Value

Returns the quadratic mean diameter (in cm) for a given plot.

Author(s)

Christian Salas-Eljatib.

Examples


#using the function
qmd(tph=1023, gha=50)

Tree locations within sample plots in an experimental forest in Austria

Description

The Austrian Research Center for Forests established a spacing experiment with Norway spruce (Picea abies) in the Vienna Woods. In the 'Hauersteig' experiment, several tree-level variables were measured within four sample plots over time. The current dataframe has only the measurements carried out in 1944.

Usage

data(spataustria)

Format

Contains cartesian position of trees, and covariates, in sample plots, as follows:

plot

Plot number.

tree

Tree number.

species

Species code as follows: PCAB=Picea abies, LADC=Larix decidua, PNSY=Pinus sylvestris, FASY=Fagus Sylvatica, QCPE=Quercus petraea, BTPE=Betula pendula.

x.coord

Cartesian position in the X-axis, in m.

y.coord

Cartesian position in the Y-axis, in m.

year

Measurement year.

dbh

diameter at breast-height, in cm.

Source

Data were retrieved from the paper cited below, where several details might be worth reading. For instance, plot size slightly varies among plots: Plot No. 1=2509.7 m^{2}, Plot No. 2=2474.8 m^{2}, Plot No. 3=2415.9 m^{2}, and Plot 4=2482.8 m^{2}.

References

- Kindermann G. Kristofel F, Neumann M, Rossler G, Ledermann T & Schueler. 2018. 109 years of forest growth measurements from individual Norway spruce trees. Sci. Data 5:180077 doi:10.1038/sdata.2018.77

Examples

data(spataustria)    
head(spataustria)
df<-spataustria
oldpar<-par(mar=c(4,4,0,0))
bord<-data.frame(
 x=c(min(df$x.coord),max(df$x.coord),min(df$x.coord),max(df$x.coord)),
 y=c(min(df$y.coord),min(df$y.coord),max(df$y.coord),min(df$y.coord))
 )
plot(bord,type="n", xlab="x (m)", ylab="y (m)", asp=1, bty='n')
points(df$x.coord,df$y.coord,col=df$plot,cex=0.5) 
par(oldpar)

Temporal tree locations within a sample plot in the Vienna woods

Description

Spatial location of trees remeasured through time for a sample plot in an experimental forest in Austria. Other covariates are also available.

Usage

data(spatimepsp)

Format

Contains cartesian position of trees, and covariates, in a sample plot, as follows:

plot

Plot number.

tree

Tree number.

species

Species code as follows: PCAB=Picea abies, LADC=Larix decidua, PNSY=Pinus sylvestris, FASY=Fagus Sylvatica, QCPE=Quercus petraea, BTPE=Betula pendula.

x.coord

Cartesian position in the X-axis, in m.

y.coord

Cartesian position in the Y-axis, in m.

year

Measurement year.

dbh

diameter at breast-height, in cm.

Source

The Austrian Research Center for Forests established a spacing experiment with Norway spruce (Picea abies) in the Vienna Woods. In the 'Hauersteig' experiment, several tree-level variables were measured within four sample plots over time. Data were retrieved from the paper cited below, where several details might be worth reading.

References

- Kindermann G. Kristofel F, Neumann M, Rossler G, Ledermann T & Schueler. 2018. 109 years of forest growth measurements from individual Norway spruce trees. Sci. Data 5:180077 doi:10.1038/sdata.2018.77

Examples

data(spatimepsp)    
head(spatimepsp)
df<-spatimepsp
lattice::xyplot(y.coord~x.coord|as.factor(year),
data=df,as.table=TRUE)

Tree-level information of forest plots across the Hawaiian archipelago.

Description

Diameter at breast height (or occurrence) of individual trees, shrubs and tree ferns across 530 plots across the Hawaiian archipelago and includes native status and cultivated status of the 185 species.

Usage

data(trlhawaii)

Format

Contains 18 variables, as follows:

island

Island name.

plot.id

Unique numeric identifier for each plot.

study

Brief name of study.

plot.area

Plot area in m^{2}.

longitude

Longitude of plot in decimal degrees; WGS84 coordinate system.

latitude

Latitude of plot in decimal degrees; WGS84 coordinate system.

year

Year in which plot data was collected.

census

Numeric identifier for each census.

tree.id

Unique numeric identifier for each individual.

scientific.name

Genus and species of each individual following TPL v. 1.1.

family

Family of each individual following TPL v. 1.1.

angiosperm

Binary variable (1 = yes, 0 = no) indicating whether an individual is classified as an angiosperm following APG III.

monocot

Binary variable (1 = yes, 0 = no) indicating whether an individual is classified as a monocot following APG III.

native.status

Categorical variable ("native", "alien", "uncertain") indicating alien status of each individual following Wagner et al. (2005).

cultivated.status

Binary variable (1 = yes, 0 = no, NA = not applicable) indicating if species is cultivated following PIER.

abundance

Number of individuals (all = 1).

abundance.ha

Abundance of each individual on a per hectare basis.

dbh

Diameter at 1.3 m (in cm) for each individual; NA indicates that size was not measured, but was classified by size class.

Source

The data were obtained from the DRYAD repository at doi:10.5061/dryad.1kk02qr.

References

- Craven D, Knight T, Barton K, Bialic-Murphy L, Cordell S, Giardina C, Gillespie T, Ostertag R, Sack L,Chase J. 2018. OpenNahele: the open Hawaiian forest plot database. Biodiversity Data Journal 6: e28406.

Examples

data(trlhawaii)  
table(trlhawaii$island,trlhawaii$study)   
unique(trlhawaii$plot.id) 
table(trlhawaii$plot.id) 
tapply(trlhawaii$plot.area,trlhawaii$study,summary)

Long term tree-list data from permanent sample plots

Description

Temporal tree-level data within four sample plots in an experimental forest in Austria. The dataframe contains several tree-level variables. Plot sizes are 2500 m^{2} (approx.) and the current dataframe only keeps the measurement years having a more reliable amount of records.

Usage

data(trlpsptime)

Format

Contains tree-level variables, as follows:

plot

Plot number.

tree

Tree identificator.

species

Species code as follows: PCAB=Picea abies, LADC=Larix decidua, PNSY=Pinus sylvestris, FASY=Fagus Sylvatica, QCPE=Quercus petraea, BTPE=Betula pendula.

year

Year of measurement.

obs

Observation.

dbh

Diameter at breast-height, in mm.

dbh2

Orthogonal measured second diameter, in mm.

hmk

Selection criteria to measure tree height. 1=systematic, 2=systematic and in the group of the 100 thickest, 3=belongs to the 100 thickest, 4=lying tree, 5:Standing tree with a ladder, 6=outlier, 7=from stem analysis.

kh

Type of the height measurement. 0:tree height, 1:angle and distances.

ho

Tree height in dm when kh=0. When kh=1 then distance to the tree in dm or in 1977 length of the base bar in cm.

ka

Height to the crown base in dm when kh=0. When kh=1 then angle to the tree top in 1/10 degree.

kb

Crown width in dm when kh=0. When kh=1 then angle to 1.3 m above tree base in 1/10 degree.

wka

Angle to crown base in 1/10 degree.

crown.cl

Crown class according to Kraft. 1=predominant, 2=dominant, 3=co-dominant, 4=dominated, 5=overtopped.

crown

Crown quality. 0=normal, 1=broken in the crown region, 2=substituted tree top, 3=forked, 4=bushy, stork nest, witches' broom, 5=wizen tree top, 6=again broken tree top.

stem

Stem quality. 0=typical, 1=crooked, 2=abiotic damaged, 3=biotic damaged, 4=forked stem without damage, 5=forked stem with damage, 6=up to 1/3 of the girth is peeled, 7=more than 1/3 of the girth is peeled, 8=broken stem, 9=other stem damages.

defoliation

crown defoliation. 1=low, 2=medium, 3=much.

Source

The Austrian Research Center for Forests established a spacing experiment with Norway spruce (Picea abies) in the Vienna Woods. In the 'Hauersteig' experiment, several tree-level variables were measured within four sample plots over time. Data were retrieved from the paper cited below, where several details might be worth reading.

References

- Kindermann G. Kristofel F, Neumann M, Rossler G, Ledermann T & Schueler. 2018. 109 years of forest growth measurements from individual Norway spruce trees. Sci. Data 5:180077 doi:10.1038/sdata.2018.77

Examples

data(trlpsptime)
df<-trlpsptime    
head(df) 
tapply(df$dbh, list(df$year,df$plot), mean)

Tree-level remeasurements for a sample plot in a Pinus radiata plantation

Description

Temporal tree-level data from a sample plot established in a Monterey pine (Pinus radiata) forestry plantation in Chile. The plot size is 1600 m^{2}, and the plantation was established in 1990.

Usage

data(trlremeasu)

Format

Tree list data for a sample plot remeasured through time, and having the following columns

plot.id

Plot code.

tree

Tree number.

x.coord

Cartesian position in the X-axis, in m.

y.coord

Cartesian position in the Y-axis, in m.

year

Measurement year.

dead

Dead identificator, 0 means alive, and 1 otherwise.

dbh

diameter at breast-height, in cm.

Source

Data were retrieved from the paper cited below, where several details might be worth reading.

References

- Pommerening A, Trincado G, Salas-Eljatib C, Burkhart H. 2023. Understanding and modelling the dynamics of data point clouds of relative growth rate and plant size. Forest Ecology and Management Volume 529:120652 doi:10.1016/j.foreco.2022.120652

Examples

data(trlremeasu)    
head(trlremeasu)
df<-trlremeasu
df$fe<-10000/1600
df$garb.ha<- (pi/40000)*df$dbh^2*df$fe
gha.t<-tapply(df$garb.ha, df$year, sum)
nha.t<-tapply(df$fe, df$year, sum);
time<-as.numeric(rownames(gha.t))
plot(nha.t~time, type="b",las=1)
plot(gha.t~time, type="b",las=1)

Smoothed tree list data from permanent sample plots

Description

Temporal tree-level variables (smoothed-values) within four sample plots in an experimental forest in Austria. The dataframe contains all the variables for all trees, where observation gaps were filled from monotone increasing predictive functions. Plot sizes are 2500 m^{2} (approx.) and the current dataframe only keeps the measurement years having a more reliable amount of records.

Usage

data(trlsmoopsp)

Format

Contains tree-level variables, as follows:

plot

Plot number.

tree

Tree identificator.

year

Year of measurement.

species

Species code as follows: PCAB=Picea abies, LADC=Larix decidua, PNSY=Pinus sylvestris, FASY=Fagus Sylvatica, QCPE=Quercus petraea, BTPE=Betula pendula.

obs

Observation in this year.

dbh

Diameter at breast-height, in cm.

toth

Tree height, in m.

hcb

Height to the crown base, in m.

Source

The Austrian Research Center for Forests established a spacing experiment with Norway spruce (Picea abies) in the Vienna Woods. In the 'Hauersteig' experiment, several tree-level variables were measured within four sample plots over time. Data were retrieved from the paper cited below, where several details might be worth reading.

References

- Kindermann G. Kristofel F, Neumann M, Rossler G, Ledermann T & Schueler. 2018. 109 years of forest growth measurements from individual Norway spruce trees. Sci. Data 5:180077 doi:10.1038/sdata.2018.77

Examples

data(trlsmoopsp)
df<-trlsmoopsp    
head(df) 
table(df$year,df$plot)
tapply(df$dbh, list(df$year,df$plot), length)

Function to compute the U-estimator for a variable from a sample plot

Description

Computes the U-estimator for integer trees per-are (1 ha=100ares)

Usage

uestimator(y.by.sortx = y.by.sortx, nare = nare)

Arguments

y.by.sortx

a vector having the tree-level variable of interest being already sorted by a sorting-variable.

nare

number of trees per are for the sample plot. Remember that 1 are=100 m2 or 1 ha=100 ares. "nare" it is an alternative to express stand density in trees/ha, here instead the unit is "trees/are". nare=length(y.by.sortx)/(plot.area.ares). If "nare" is not an integer, it is rounded to the nearest integer, with a warning.

Details

The original function was written by Dr Oscar García, and the corresponding reference is provided. The current function has only some small changes.

Value

The main output is the U-estimator

Author(s)

Dr Oscar García.

References

- Garcia O, Batho A. 2005. Top height estimation in lodgepole pine sample plots. Western Journal of Applied forestry 20(1):64-68.

Examples


#Creates a fake dataframe
h <- c(29.1,28, 24.5, 26, 21,20.5,20.1); 
trees.per.plot<-35; plot.area.m2<-500;
exp.factor.ha<-10000/plot.area.m2;exp.factor.ha
#Remember 1 are= 100 m2 o 1 ha= 100 ares
plot.area.ares<-plot.area.m2/100; plot.area.ares
plot.area.ha<-plot.area.m2/10000;plot.area.ha
n.ha<-trees.per.plot/plot.area.ha;n.ha #*(10000/plot.area.m2)
n.are<-trees.per.plot/plot.area.ares;n.are
#Using the domvar function
uestimator(y.by.sortx=h,nare=n.are)

Function to compute prediction statistics based on observed values

Description

Computes three prediction statistics as a way to compare observed versus predicted values of a response variable of interest. The statistics are: the aggregated difference (AD), the root mean square differences (RMSD), and the aggregated of the absolute value differences (AAD). All of them area based on

r_i = y_i - \hat{y}_i

where y_i and \hat{y}_i are the observed and the predicted value of the response variable y for the i-th observation, respectively. Both the observed and predicted values must be expressed in the same units.

Usage

valesta(y.obs = y.obs, y.pred = y.pred)

Arguments

y.obs

observed values of the variable of interest

y.pred

predicted values of the variable of interest

Details

The function computes the three aforementioned statistics expressed in (i) as the units of the response variable and (i) as a percentage. Notice that to represent each statistic in percentual terms, we divided them by the mean observed value of the response variable.

Value

The main output following six prediction statistics as a vector: (RMSD, RMSD.p, AD, AD.p, AAD, AAD.p); where RMSD.p stands for RMSD expressed as a percentage, and the same applies to AD.p and AAD.p.

Author(s)

Christian Salas-Eljatib.

References

- Salas C, Ene L, Gregoire TG, Nasset E, Gobakken T. 2010. Modelling tree diameter from airborne laser scanning derived variables: a comparison of spatial statistical models. Remote Sensing of Environment 114(6):1277-1285. doi:10.1016/j.rse.2010.01.020

- Salas C. 2002. Ajuste y validación de ecuaciones de volumen para un relicto del bosque de roble-laurel-lingue. Bosque 23(2):81–92. doi:10.4067/S0717-92002002000200009.

Examples


#Creates a fake dataframe
set.seed(1234)
df <- as.data.frame(cbind(Y=rnorm(30, 30,9), X=rnorm(30, 450,133)))
#fitting a candidate model
mod1 <- lm(Y~X, data=df)
#Using the valesta function
valesta(y.obs=df$Y,y.pred=fitted(mod1))