Type: | Package |
Title: | Functions and Datasets for "Forest Analytics with R" |
Version: | 1.2.0 |
Date: | 2025-06-22 |
Maintainer: | Andrew Robinson <apro@unimelb.edu.au> |
Depends: | R (≥ 2.10), MASS, lattice |
Description: | Provides functions and datasets from the book "Forest Analytics with R". |
License: | GPL-3 |
LazyLoad: | yes |
NeedsCompilation: | no |
Packaged: | 2025-06-22 07:21:20 UTC; root |
Author: | Andrew Robinson [aut, cre], Jeff Hamann [aut] |
Repository: | CRAN |
Date/Publication: | 2025-06-22 09:40:05 UTC |
Self-starting version of the allometric function y = a x^b.
Description
This function is used for fitting the allometric function to bivaraite data. The function is of the form y = alpha x ^ beta, where traditionally x and y are different dimensions of a sampling unit, such as diameter and volume of a tree.
Usage
SSallometric(x, alpha, beta)
Arguments
x |
predictor variable (e.g. volume) |
alpha |
product parameter |
beta |
exponent parameter |
Value
The function returns a numeric vector of response variables. The vector has two additional attributes: the gradient, which reports the first derivative of the function with respect to the parameters, evaluated at the response value; and the hessian, which reports the matrix of second partial derivatives of the function with respect to the parameters evaluated at the response variable.
Note
Demonstrates construction and usage of self-starting functions using selfStart.
Author(s)
Andrew Robinson <apro@unimelb.edu.au>
References
Robinson, A.P., and J.D. Hamann. 2010. Forest Analytics with R: an Introduction. Springer.
See Also
Examples
SSallometric(10, 2, 3)
data(sweetgum)
nls(vol.m3 ~ SSallometric(dbh.cm, alpha, beta), data = sweetgum)
Generates log volumes given a dataframe that contains stem measurements.
Description
This function generates a dataframe object that contains the original stem measurements and appends columns named by log.grades, where log.grades corresponds to the minimum log diameters defined by log.breaks.
Usage
generate.log.vols( x,
log.breaks=c(2,5,12,18,32,999),
log.grades=c("pulp","s4","s3","s2","s1","peeler"),
display.stems=FALSE )
Arguments
x |
The dataframe containing the original stem measurements. |
log.breaks |
The vector defining the minimum diameters for the log grades defined by log.grades. |
log.grades |
The vector defining the text labels for the log.breaks. |
display.stems |
The control switch to display stems as they are being merchanised. |
Details
The function contains supporting function to determine the merchantable stem height, then tallies the amount of Smalian log volume, in each of the log.grades. The resulting dataframe is then converted to be appended to each tree record in x. Normally, it would not be called directly.
Value
A dataframe that contains the original stem measurements with the log volumes appended.
Author(s)
Jeff D. Hamann <jeff.hamann@forestinformatics.com>
References
Robinson, A.P., and J.D. Hamann. 2010. Forest Analytics with R: an Introduction. Springer.
See Also
Examples
# test <- data.frame(a = c(1,2), b = c(3,4))
# show.cols.with.na(test)
# is.na(test$a[2]) <- TRUE
# show.cols.with.na(test)
von Guttenberg's Norway spruce (Picea abies [L.] Karst) tree measurement data.
Description
The data are measures from 107 trees. The trees were selected as being of average size from healthy and well stocked stands in the Alps.
Usage
data(gutten)
Format
A data frame with 1200 observations on the following 9 variables.
site
Growth quality class of the tree's habitat. 5 levels.
location
Distinguishes tree location. 7 levels.
tree
An identifier for the tree within location.
age.base
The tree age taken at ground level.
height
Tree height, m.
dbh.cm
Tree diameter, cm.
volume
Tree volume.
age.bh
Tree age taken at 1.3 m.
tree.ID
A factor uniquely identifying the tree.
Source
The data were kindly provided to us by Professor Boris Zeide, and are documented in von Guttenberg, A. R., 1915. Growth and yield of spruce in Hochgebirge. Franz Deuticke, Vienna (in German).
References
Robinson, A.P., and J.D. Hamann. 2010. Forest Analytics with R: an Introduction. Springer.
Zeide, B., 1993. Analysis of growth equations. Forest Science 39 (3), 549-616
Examples
data(gutten)
str(gutten)
Herbicide trial seedling data
Description
These data were collected during the 1994 planting season in Southwest Washington State.
Usage
data(herbdata)
Format
A data frame with 961 observations on the following 8 variables.
- treat
treatment for control or application
- rep
replication
- tree
tree number in the replication
- date
date the observation was made
- isalive
indicator for alive/dead status
- height
height of the tree in cm
- dia
basal diameter of the stem, in mm
- dbh
diameter at breast height, in mm
Details
The plots were installed during the 1994 planting season in southwestern Washington by Don Wallace and Bruce Alber. Three replications of 20 seedlings were planted in two blocks. The two blocks were a control block and a block treated with 220 ml per hectare of Oust herbicide. The plots were then measured over the next ten years. At each observation, the basal diameter, total height, and condition of the stem were recorded. When the stems reached breast height (1.37 m in the United States), the breast height diameter was also recorded. An indicator variable was used to record if the stem was dead or alive. If the stem was dead, the observations were recorded as NA.
Source
The data are provided courtesy of Don Wallace and Bruce Alber of the Wilbur-Ellis Company.
References
Robinson, A.P., and J.D. Hamann. 2010. Forest Analytics with R: an Introduction. Springer.
Examples
data(herbdata)
Predicts height (m) from diameter (cm) by species, using functions from Wykoff et al. (1982).
Description
This vectorized function uses models and parameter estimates from Wykoff et al. (1982) to predict tree heights given over-bark diameter measurements (cm) taken at 1.37 m (4'6”). The function ht.fvs.ni.ft performs the computation in imperial units, and ht.fvs.ni.m is a wrapper for convenience.
Usage
ht.fvs.ni.ft(spp, dbh.in)
ht.fvs.ni.m(spp, dbh.cm)
Arguments
spp |
Tree species. Must be one of: WP, WL, DF, GF, WH, WC, LP, ES, SF, PP, MH |
dbh.cm |
Tree diameter, cm, measured at 1.37 m. from the ground. |
dbh.in |
Tree diameter, in., measured at 1.37 m. from the ground. |
Details
The species are: WP = white pine, WL = western larch, DF = Douglas-fir, GF = grand fir, WH = western hemlock, WC = western red cedar, LP = lodgepole pine, ES = Engelmann spruce, SF = subalpine fir, PP = ponderosa pine, and MH = mountain hemlock.
The function was fitted using least squares regression; the resposne variable was log of height and the predictor variable 1 / (DBH + 1).
Value
The function returns a vector of tree heights, in metres.
Note
The function doesn't perform any input checks. Caveat computator.
Author(s)
Andrew Robinson <apro@unimelb.edu.au>
References
Robinson, A.P., and J.D. Hamann. 2010. Forest Analytics with R: an Introduction. Springer.
Wykoff, W. R., Crookston, N. L., Stage, A. R., 1982. User's Guide to the Stand Prognosis Model. GTR-INT 133, USDA Forest Service, Ogden, UT.
Examples
ht.fvs.ni.m(c("DF, WH"), c(25, 27))
Leuschner harvest schedule yield data
Description
These data are used to present and study forest regulation using mathematical programming and R.
Usage
data(leuschner)
Format
A data frame with 48 observations on the following 4 variables.
- stand
index variable identifying the type of forested area
- period
cutting period of the forest harvest schedule
- age
at harvest at cutting period midpoint of planning period
- vol
the stand volume at age, in thousands of cubic feet per acre
Details
This table contains example yields for an 84,000 acre (33993.93 ha) Douglas-fir forest. The yields span over six (6) planning periods and eight (8) age classes from age 25 to 95 years of age.
Source
The data were originally published in Leuschner (1990).
References
Leuschner, William A. 1990. Forest Regulation, Harvest Scheduling, and Planning Techniques. John Wiley and Sons, Inc.
Robinson, A.P., and J.D. Hamann. 2010. Forest Analytics with R: an Introduction. Springer.
Examples
data(leuschner)
print( leuschner )
Identifies variables in a dataframe that have missing values, along with a count.
Description
This function reports the number of missing values in each variable in a dataframe. Variables that have no missing values are ignored.
Usage
show.cols.with.na(x)
Arguments
x |
The dataframe to check. |
Value
A vector of missing values counts, one value for each variable with missing values. If no variables have missing values then prints a message and exits.
Author(s)
Andrew Robinson <apro@unimelb.edu.au>
References
Robinson, A.P., and J.D. Hamann. 2010. Forest Analytics with R: an Introduction. Springer.
See Also
Examples
test <- data.frame(a = c(1,2), b = c(3,4))
show.cols.with.na(test)
is.na(test$a[2]) <- TRUE
show.cols.with.na(test)
Generates species summaries from a dataframe that contains stem measurements.
Description
This function generates a dataframe object that contains the original stem measurements and appends columns named by log.grades, where log.grades corresponds to the minimum log diameters defined by log.breaks.
Usage
sp.sums.2( x,
log.breaks=c(2,5,12,18,32,999),
log.grades=c("pulp","s4","s3","s2","s1","peeler") )
Arguments
x |
The dataframe containing the original stem measurements. |
log.breaks |
The vector defining the minimum diameters for the log grades defined by log.grades. |
log.grades |
The vector defining the text labels for the log.breaks. |
Details
The function generates summaries, by species, for common statistics used in growth and yield simulations.
It performs the same function as the sp.sums
function in the Rconifers library.
Value
A dataframe that contains the original stem measurements with the log volumes appended for each species.
Author(s)
Jeff D. Hamann <jeff.hamann@forestinformatics.com>
References
Robinson, A.P., and J.D. Hamann. 2010. Forest Analytics with R: an Introduction. Springer.
See Also
rconifers::sp.sums
Examples
# test <- data.frame(a = c(1,2), b = c(3,4))
# show.cols.with.na(test)
# is.na(test$a[2]) <- TRUE
# show.cols.with.na(test)
Stage's Grand fir (Abies grandis (Dougl) Lindl.) tree measurement data
Description
The data are internal stem measures from 66 trees. The trees were selected as having been dominant throughout their lives with no visible evidence of damage or forks. The trees came from stands throughout the inland range of the species.
Usage
data(stage)
Format
A data frame with 542 observations on the following 11 variables.
Tree.ID
A factor uniquely identifying the tree.
Forest
An integer distinguishing the forest.
HabType
An integer distinguishing the habitat type.
Decade
The decade of the trees life represented by the observation.
Dbhib
Diameter (in.) at 1.37 m (4'6”) inside bark.
Height
Height of tree (ft)
Age
Age of tree at felling
Forest.ID
The national forest in which the tree was felled.
Hab.ID
Daubenmmire's (1952) classification of the local growing conditions:
Ts/Pac
Ts/Op
Th/Pach
AG/Pach
PA/Pach
dbhib.cm
Diameter (cm.) at 1.37 m (4'6”) inside bark.
height.m
Height of tree (m)
Details
Quoting Stage (1963), "After felling, the total height was measured, and the age at breast height was determined by counting the rings on a crossection. Then, decadal height growth was measured, starting from the termination of the 1956 height growth. The count of whorls was checked by a ring count at every decadal point. ... Diameters at breast height (measuread along an average radius with a scale having 10 graduations per half inch) corresponding to each decadal height point were also recorded."
The national forests are: Kaniksu, Coeur d'Alene, St. Joe, Clearwater, Nez Perce, Clark Fork, Umatilla, Wallowa, and Payette.
Source
Stage, A. 1963. A mathematical approach to polymorphic site index curves for grand fir. Forest Science 9(2) 167-180.
References
Robinson, A.P., and J.D. Hamann. 2010. Forest Analytics with R: an Introduction. Springer.
Examples
data(stage)
str(stage)
Lenhart's sweetgum (Liquidambar styraciflua L.) tree measurement data.
Description
The original data, also supplied in the package, are measures of stem diameter and height at various locations on the bole of 39 sweetgum trees from Texas, USA.
Usage
data(sweetgum)
Format
A data frame with 39 tree-level observations on the following 8 variables.
plot
Identifies the plot in which the tree was felled.
tree
A factor that identifies the tree.
dbh.in
The tree diameter (in.) at 1.37 m (4'6”)
stump.ht.ft
The height of the stump after felling (ft).
height.ft
The height of the tree (ft).
height.m
The height of the tree (m).
dbh.cm
The tree diameter (cm.) at 1.37 m (4'6”)
vol.m3
The estimated biological volume of the stem (cubic meters).
Details
The height measure is of the standing tree, so it includes the stump height. The volume was computed by fitting a spline to the height and diameter measures, and integrating the solid that corresponds to the profile of the spline. See Section 2.4.2 of Robinson and Hamann (2010) for more details.
Source
The data were kindly supplied by Professor Timothy Gregoire and were originally collected by David Lenhart.
References
Robinson, A.P., and J.D. Hamann. 2010. Forest Analytics with R: an Introduction. Springer.
Examples
data(sweetgum)
str(sweetgum)
Upper Flat Creek forest cruise tree data
Description
These are a subset of the tree measurement data from the Upper Flat Creek unit of the University of Idaho Experimental Forest, which was measured in 1991.
Usage
data(ufc)
Format
A data frame with 336 observations on the following 5 variables.
- plot
plot label
- tree
tree label
- species
species kbd with levels DF, GF, WC, WL
- dbh.cm
tree diameter at 1.37 m. from the ground, measured in centimetres.
- height.m
tree height measured in metres
Details
The inventory was based on variable radius plots with 6.43 sq. m. per ha. BAF (Basal Area Factor). The forest stand was 121.5 ha. This version of the data omits errors, trees with missing heights, and uncommon species. The four species are Douglas-fir, grand fir, western red cedar, and western larch.
Source
The data are provided courtesy of Harold Osborne and Ross Appelgren of the University of Idaho Experimental Forest.
References
Robinson, A.P., and J.D. Hamann. 2010. Forest Analytics with R: an Introduction. Springer.
Examples
data(ufc)
Predicts volume (m^3) from diameter (cm) and height (m) by species, using functions from Wykoff et al. (1982).
Description
This vectorized function uses models and parameter estimates from Wykoff et al. (1982) to predict tree volumes given tree heights (m) and over-bark diameter measurements (cm) taken at 1.37 m (4'6”). The function vol.fvs.ni.bdft performs the computation in imperial units, and vol.fvs.ni.m3 is a wrapper for convenience.
Usage
vol.fvs.ni.m3(spp, dbh.cm, ht.m)
vol.fvs.ni.bdft(spp, dbh.in, ht.ft)
Arguments
spp |
Tree species. Must be one of: WP, WL, DF, GF, WH, WC, LP, ES, SF, PP, MH |
dbh.cm |
Tree diameter, cm, measured at 1.37 m. from the ground. |
dbh.in |
Tree diameter, in., measured at 1.37 m. from the ground. |
ht.m |
Tree height, m. |
ht.ft |
Tree height, ft. |
Details
The species are: WP = white pine, WL = western larch, DF = Douglas-fir, GF = grand fir, WH = western hemlock, WC = western red cedar, LP = lodgepole pine, ES = Engelmann spruce, SF = subalpine fir, PP = ponderosa pine, and MH = mountain hemlock.
Value
The function returns a vector of tree volumes, in cubic metres.
Note
The function doesn't perform any input checks. Caveat computator.
Author(s)
Andrew Robinson <apro@unimelb.edu.au>
References
Robinson, A.P., and J.D. Hamann. 2010. Forest Analytics with R: an Introduction. Springer.
Wykoff, W. R., Crookston, N. L., Stage, A. R., 1982. User's Guide to the Stand Prognosis Model. GTR-INT 133, USDA Forest Service, Ogden, UT.
Examples
vol.fvs.ni.m3(c("DF, WH"), c(25, 27), c(15, 20))