Title: | Quantitative Estimates of Small Ectotherm Temperature Regulation Effectiveness |
---|---|
Description: | Easy and rapid quantitative estimation of small terrestrial ectotherm temperature regulation effectiveness in R. ectotemp is built on classical formulas that evaluate temperature regulation by means of various indices, inaugurated by Hertz et al. (1993) <doi: 10.1086/285573>. Options for bootstrapping and permutation testing are included to test hypotheses about divergence between organisms, species or populations. |
Authors: | Wouter Beukema [aut, cre] |
Maintainer: | Wouter Beukema <[email protected]> |
License: | MIT + file LICENSE |
Version: | 0.2.0 |
Built: | 2024-10-30 03:29:27 UTC |
Source: | https://github.com/wouterbeukema/ectotemp |
Easy and rapid quantitative estimation of small terrestrial ectotherm temperature regulation effectiveness in R. ectotemp is built on classical formulas that evaluate temperature regulation by means of various indices, inaugurated by Hertz et al. (1993) <doi: 10.1086/285573>. Options for bootstrapping and permutation testing are included to test hypotheses about divergence between organisms, species or populations.
ectotemp builds on work by Hertz et al. (1993, and references therein),
Christian and Weavers (1996), and Blouin-Demers and Weatherhead (2001). Users
of this package do not need to be particularly experienced in R, but are
expected to be familiar with the background, appropriate choice, and caveats
of the available functions (Hertz et al. 1993, Christian and Weavers 1996,
Wills and Beaupre 2000, Blouin-Demers and Nadeau 2005).
The aim of the ectotemp package is to facilitate easy and rapid estimation
of small, terrestrial ectotherm temperature regulation effectiveness after
data describing field-active body temperatures (Tb), environmental
(operative) temperatures (Te) and preferred temperatures (the set-
point range, Tset) have been collected. The package provides functions
for the following types of analyses:
The accuracy of temperature regulation (db) and associated descriptive statistics, which estimate the degree to which ectotherms experience body temperature outside of their set-point range;
The thermal quality of the habitat (de) and associated descriptive statistics, which estimate the degree to which environmental temperature matches the set-point range;
Choice between several approaches to calculate effectiveness of temperature regulation (E), including bootstrap resampling of the original distributions of Tb and Te to determine confidence interval for the mean, and permutation tests for between-population or species comparisons;
Exploitation of the thermal environment (Ex), i.e., the amount of time when field body temperatures (Tb) are within the set-point range, relative to the total amount of time during which this could have been possible as indicated by operative temperatures (Te).
Maintainer: Wouter Beukema [email protected]
Blouin-Demers, G., & Weatherhead, P. J. (2001). Thermal ecology of black rat
snakes (Elaphe obsoleta) in a thermally challenging environment.
Ecology, 82(11), 3025-3043.
Blouin-Demers, G., & Nadeau, P. (2005). The cost-benefit model of
thermoregulation does not predict lizard thermoregulatory behavior. Ecology,
86(3), 560-566.
Christian, K. A., & Weavers, B. W. (1996). Thermoregulation of monitor
lizards in Australia: an evaluation of methods in thermal biology.
Ecological monographs, 66(2), 139-157.
Hertz, P. E., Huey, R. B., & Stevenson, R. D. (1993). Evaluating temperature
regulation by field-active ectotherms: the fallacy of the inappropriate
question. The American Naturalist, 142(5), 796-818.
Wills, C. A., & Beaupre, S. J. (2000). An application of randomization for
detecting evidence of thermoregulation in timber rattlesnakes (Crotalus
horridus) from northwest Arkansas. Physiological and Biochemical Zoology,
73(3), 325-334.
Useful links:
Bootstrapping of the effectiveness of temperature regulation (E) from the
original distributions of Te and Tb as described by Hertz et al. (1993).
One can choose the number of resamples and has the option to calculate E as
defined by Hertz et al. (1993) or Blouin-Demers & Weatherhead (2001). See
calculate_E_hertz
and calculate_E_blouin
for
more information about these two indices.
The thermal quality of the habitat (de) and accuracy of temperature
regulation (db) are calculated as part of this formula, so it is not
necessary to run calculate_de
and calculate_db
before running this function.
bootstrap_E(te, tb, tset_low, tset_up, index, n)
bootstrap_E(te, tb, tset_low, tset_up, index, n)
te |
A vector containing operative temperatures. |
tb |
A vector containing body temperature measurements. |
tset_low |
Lower boundary of a species or population set-point range that was determined through thermal preference trials in a temperature gradient. This may be a named double vector containing the lower boundary value, or simply the value itself. |
tset_up |
Upper boundary of the set-point range. |
index |
Either 'hertz' or 'blouin'. |
n |
The desired number of samples drawn with replacement. |
The mean E and its 95 percent confidence interval obtained through resampling with replacement n times.
Blouin-Demers, G., & Weatherhead, P. J. (2001). Thermal ecology of black rat
snakes (Elaphe obsoleta) in a thermally challenging environment. Ecology, 82
(11), 3025-3043.
Hertz, P. E., Huey, R. B., & Stevenson, R. D. (1993). Evaluating temperature
regulation by field-active ectotherms: the fallacy of the inappropriate
question. The American Naturalist, 142(5), 796-818.
calculate_E_hertz
and
calculate_E_blouin
.
te <- na.omit(bufbuf[,"te"]) tb <- na.omit(bufbuf[,"tb"]) E_bootstrapped <- bootstrap_E(te, tb, 19.35, 26.44, 'hertz', 1000)
te <- na.omit(bufbuf[,"te"]) tb <- na.omit(bufbuf[,"tb"]) E_bootstrapped <- bootstrap_E(te, tb, 19.35, 26.44, 'hertz', 1000)
Active field body temperature data of Belgian common toads (Bufo bufo) and associated operative temperature data from agar models, collected during nocturnal surveys in spring. Data are in degrees Celsius.
data(bufbuf)
data(bufbuf)
An object of class data.frame
with 99 rows and 2 columns.
Wouter Beukema [email protected]
This function determines the degree to which ectotherms experience body temperatures outside their set-point range, better known as the accuracy of temperature regulation (db) as described by Hertz et al. (1993). Descriptive statistics are automatically computed as well.
calculate_db(tb, tset_low, tset_up)
calculate_db(tb, tset_low, tset_up)
tb |
A vector containing body temperature measurements. |
tset_low |
Lower boundary of a species or population set-point range that was determined through thermal preference trials in a temperature gradient. |
tset_up |
Upper boundary of the set-point range. |
Degree to which ectotherms experience body temperatures outside their set-point range (db), and associated descriptive statistics.
Hertz, P. E., Huey, R. B., & Stevenson, R. D. (1993). Evaluating temperature regulation by field-active ectotherms: the fallacy of the inappropriate question. The American Naturalist, 142(5), 796-818.
tb <- na.omit(bufbuf[,"tb"]) db_stats <- calculate_db(tb, 19.35, 26.44)
tb <- na.omit(bufbuf[,"tb"]) db_stats <- calculate_db(tb, 19.35, 26.44)
This function calculates the thermal quality of the habitat (de) from the perspective of the focal species or population as described by Hertz et al. (1993). Descriptive statistics are automatically computed as well.
calculate_de(te, tset_low, tset_up)
calculate_de(te, tset_low, tset_up)
te |
A vector containing operative temperatures. |
tset_low |
Lower boundary of a species or population set-point range that was determined through thermal preference trials in a temperature gradient. |
tset_up |
Upper boundary of the set-point range. |
Thermal quality of the habitat (de) and associated descriptive statistics.
Hertz, P. E., Huey, R. B., & Stevenson, R. D. (1993). Evaluating temperature regulation by field-active ectotherms: the fallacy of the inappropriate question. The American Naturalist, 142(5), 796-818.
te <- na.omit(bufbuf[,"te"]) de_stats <- calculate_de(te, 19.35, 26.44)
te <- na.omit(bufbuf[,"te"]) de_stats <- calculate_de(te, 19.35, 26.44)
This function calculates an often-used variant of the original formula to
determine effectiveness of temperature regulation of Hertz et al. (1993).
The concerning variant was proposed by Blouin-Demers & Weatherhead (2001),
who argued that interpretation of the formula of Hertz et al. (1993) is
confounded by the fact that different combinations of the mean thermal
quality of the habitat (de) and mean accuracy of temperature regulation (db)
might lead to similar E values. As such, Blouin-Demers & Weatherhead (2001)
proposed use of E = de - db, which quantifies the extent of departure from
perfect thermoconformity. Positive E values indicate active temperature
regulation, negative values represent active avoidance of suitable thermal
habitat, and values around 0 suggest thermoconformity.
The thermal quality of the habitat (de) and accuracy of temperature
regulation (db) are calculated as part of this formula, so it is not
necessary to run calculate_de
and calculate_db
before running this function.
calculate_E_blouin(te, tb, tset_low, tset_up)
calculate_E_blouin(te, tb, tset_low, tset_up)
te |
A vector containing operative temperatures. |
tb |
A vector containing body temperature measurements. |
tset_low |
Lower boundary of a species or population set-point range that was determined through thermal preference trials in a temperature gradient. This may be a named double vector containing the lower boundary value, or simply the value itself. |
tset_up |
Upper boundary of the set-point range. |
Effectiveness of temperature regulation (E) sensu Blouin-Demers and Weatherhead (2001).
Blouin-Demers, G., & Weatherhead, P. J. (2001). Thermal ecology of black rat snakes (Elaphe obsoleta) in a thermally challenging environment. Ecology, 82 (11), 3025-3043.
te <- na.omit(bufbuf[,"te"]) tb <- na.omit(bufbuf[,"tb"]) E <- calculate_E_blouin(te, tb, 19.35, 26.44)
te <- na.omit(bufbuf[,"te"]) tb <- na.omit(bufbuf[,"tb"]) E <- calculate_E_blouin(te, tb, 19.35, 26.44)
This function calculates the effectiveness of temperature regulation
(E = 1 - (mean db / mean de)) as described by Hertz et al. (1993). The
thermal quality of the habitat (de) and accuracy of temperature regulation
(db) are calculated as part of this formula, so it is not necessary to run
calculate_de
and calculate_db
before running
this function.
calculate_E_hertz(te, tb, tset_low, tset_up)
calculate_E_hertz(te, tb, tset_low, tset_up)
te |
A vector containing operative temperatures. |
tb |
A vector containing body temperature measurements. |
tset_low |
Lower boundary of a species or population set-point range that was determined through thermal preference trials in a temperature gradient. This may be a named double vector containing the lower boundary value, or simply the value itself. |
tset_up |
Upper boundary of the set-point range. |
Effectiveness of temperature regulation (E)
Hertz, P. E., Huey, R. B., & Stevenson, R. D. (1993). Evaluating temperature regulation by field-active ectotherms: the fallacy of the inappropriate question. The American Naturalist, 142(5), 796-818.
calculate_de
and calculate_db
.
te <- na.omit(bufbuf[,"te"]) tb <- na.omit(bufbuf[,"tb"]) E <- calculate_E_hertz(te, tb, 19.35, 26.44)
te <- na.omit(bufbuf[,"te"]) tb <- na.omit(bufbuf[,"tb"]) E <- calculate_E_hertz(te, tb, 19.35, 26.44)
This function determines the extent to which organisms exploit their thermal environment (indexed by Ex) following Christian and Weavers (1996). Ex is given by the amount of time when field body temperatures (Tb) are within the set-point range, relative to the total amount of time during which this could have been possible as indicated by operative temperatures (Te). The higher the Ex value, the more an organism exploits its thermal environment when the environment is permissive. The user-supplied vectors containing Te and Tb data are assumed to use the same time unit.
calculate_Ex(te, tb, tset_low, tset_up)
calculate_Ex(te, tb, tset_low, tset_up)
te |
A vector containing operative temperatures. These data should be in the same time unit as the tb data. |
tb |
A vector containing body temperature measurements. |
tset_low |
Lower boundary of a species or population set-point range that was determined through thermal preference trials in a temperature gradient. This may be a named double vector containing the lower boundary value, or simply the value itself. |
tset_up |
Upper boundary of the set-point range. |
Ex index, indicating thermal exploitation of the environment during a user-determined period of time.
Christian, K. A., & Weavers, B. W. (1996). Thermoregulation of monitor lizards in Australia: an evaluation of methods in thermal biology. Ecological monographs, 66(2), 139-157.
te <- na.omit(ichalp[,"te"]) tb <- na.omit(ichalp[,"tb"]) Ex <- calculate_Ex(te, tb, 14.44, 18.33)
te <- na.omit(ichalp[,"te"]) tb <- na.omit(ichalp[,"tb"]) Ex <- calculate_Ex(te, tb, 14.44, 18.33)
To test whether or not distinct species or populations (hereafter 'entity') differed in their effectiveness of thermoregulation, Hertz et al. (1993) suggested comparing paired estimates of E obtained through bootstrapping. However, because sample sizes of active body temperatures (Tb) or operative temperatures (Te) may be small and could differ in size and variance, possibly leading to non-normality, we propose to use two-sided permutation testing instead of bootstrapping to build and compare distributions of E values.
compare_E( datasp1, datasp2, tset_lowsp1, tset_upsp1, tset_lowsp2, tset_upsp2, index, n )
compare_E( datasp1, datasp2, tset_lowsp1, tset_upsp1, tset_lowsp2, tset_upsp2, index, n )
datasp1 |
A dataframe with two columns named 'te' (containing operative temperatures) and 'tb' (containing body temperature measurements) of entity 1. Do not use capitals in column names. |
datasp2 |
A dataframe for entity 2 structured as indicated above. |
tset_lowsp1 |
Lower boundary of the set-point range of entity 1 that was determined through thermal preference trials in a temperature gradient. This may be a named double vector containing the lower boundary value, or simply the value itself. |
tset_upsp1 |
Upper boundary of the set-point range of entity 1. |
tset_lowsp2 |
Lower boundary of the set-point range of entity 2. |
tset_upsp2 |
Upper boundary of the set-point range of entity 2. |
index |
Either 'hertz' or 'blouin'. |
n |
The desired number of samples drawn without replacement. |
Permutation testing results including a graphical overview which displays the empirical (actual) difference in E between two entities, along with a null distribution of differences in permuted E values constructed from pooled data of both entities.
Blouin-Demers, G., & Weatherhead, P. J. (2001). Thermal ecology of black rat
snakes (Elaphe obsoleta) in a thermally challenging environment. Ecology, 82
(11), 3025-3043.
Hertz, P. E., Huey, R. B., & Stevenson, R. D. (1993). Evaluating temperature
regulation by field-active ectotherms: the fallacy of the inappropriate
question. The American Naturalist, 142(5), 796-818.
calculate_E_hertz
and calculate_E_blouin
.
bufbuf <- bufbuf ichalp <- ichalp E_diff <- compare_E(bufbuf, ichalp, 19.35, 26.44, 14.44, 18.33, 'blouin', 1000)
bufbuf <- bufbuf ichalp <- ichalp E_diff <- compare_E(bufbuf, ichalp, 19.35, 26.44, 14.44, 18.33, 'blouin', 1000)
Active field body temperature data of Belgian alpine newts (Ichthyosaura alpestris) and associated operative temperature data from agar models, collected during nocturnal surveys in spring. Data are in degrees Celsius.
data(ichalp)
data(ichalp)
An object of class data.frame
with 99 rows and 2 columns.
Wouter Beukema [email protected]