Quantitative ethnobotany analysis with ethnobotanyR

Cory Whitney, University of Bonn

ethnobotanyR logo

Quantitative ethnobotany is the study of the use and importance of plants in human cultures, using statistical and analytical methods to quantify and interpret data. This approach has emerged as a key tool for understanding the cultural and ecological significance of plant species, and for evaluating the impact of human activities on plant communities and ecosystems.

The field of ethnobotany has a long history, with roots dating back to the early 20th century when researchers began to systematically study the relationships between humans and plants. In recent decades, advances in statistical and computational techniques have enabled researchers to more rigorously and systematically analyze and interpret ethnobotanical data, leading to a greater understanding of the complex and diverse ways in which plants are used and valued in different cultural and ecological contexts.

Today, quantitative ethnobotany is an interdisciplinary field that draws on a range of methods and approaches from the natural and social sciences, including anthropology, sociology, biology, and ecology. It is a rapidly growing field that is making significant contributions to our understanding of human-plant relationships, and to the conservation and management of plant biodiversity.

This manual offers an overview of the basic functions of the ethnobotanyR package for generating figures and performing some very basic quantitative ethnobotany analysis. It offers a general overview and some arguments for and against the use of indices and offers some guidance toward other options for quantitative ethnobotany analysis. It also offers some handy and useful tools for exploratory analysis of ethnobotany data. All analyses are done using the ethnobotanyR package (Whitney 2022) in the R programming language (R Core Team 2022).

using the ethnobotanyR package

The ethnobotanyR package offers quantitative tools to assess the cultural significance of plant species based on informant consensus (Whitney 2022) 1. The package closely follows two papers, one on cultural importance indices (Tardío and Pardo-de-Santayana 2008) and another on agrobiodiversity valuation (Whitney, Bahati, and Gebauer 2018). The goal is to provide an easy-to-use platform for ethnobotanists to perform quantitative ethnobotany assessments. Users are highly encouraged to familiarize themselves with ethnobotany theory (U. de Albuquerque and Hurrell 2010) and social ecological theory (Ulysses Paulino Albuquerque et al. 2019). An overview of this theoretical background will be helpful in understanding approaches in ethnobotany and formulating useful research questions.

An example data set called ethnobotanydata is provided to show how standard quantitative ethnobotany data should be formatted to interface with the ethnobotanyR package. This is an ethnobotany data set including one column of 20 knowledge holder identifiers informant and one of 4 species names sp_name. The rest of the columns are the identified ethnobotany use categories. The data in the use categories is populated with counts of uses per person (should be 0 or 1 values) 2.

First six rows of the example ethnobotany data included with ethnobotanyR
informant sp_name Use_1 Use_2 Use_3 Use_4 Use_5 Use_6 Use_7 Use_8 Use_9 Use_10
inform_a sp_a 0 0 1 0 0 0 0 1 1 0
inform_a sp_b 0 0 0 0 0 0 0 0 0 0
inform_a sp_c 0 0 0 0 0 1 1 0 0 0
inform_a sp_d 0 0 0 0 0 0 0 0 0 0
inform_b sp_a 0 1 1 0 0 1 0 0 1 0
inform_b sp_b 1 0 0 0 0 0 1 0 0 0

Many of the functions in ethnobotanyR make use of select() and filter_all() functions of the dplyr package (Wickham et al. 2022) and pipe functions %>% from the magrittr package (Bache and Wickham 2022). The intention is that these should be easy to understand and use, and that they should allow users the chance to pull the code for these functions and change anything they see fit.

Working with figures

Figures can help to visually represent the main ideas or key results of ethnobotany work. A figure is a graphical representation of data or concepts, and it can be an effective tool for conveying complex information in a clear and concise manner. Figures are often used in ethnobotany research to illustrate important points, highlight trends or patterns in the data, or demonstrating results of statistical analyses. There are several benefits to working on making good figures. A meaningful and well formulated figure can help to make ethnobotany work engaging, visually appealing and accessible to a wide audience. Overall, generating a figure can be a valuable tool for effectively communicating the key ideas and results of ethnobotany research. Here we walk through a few of the functions within the ethnobotanyR package for generating figures (Whitney 2022).

Chord diagrams with circlize

The following chord plots are made using functions from the circlize package (Gu 2022). An example of the application of chord plots in ethnobotany is described in a study on agrobiodiversity in Uganda (Whitney, Bahati, and Gebauer 2018).

The ethnoChord() function creates a chord diagram of ethnobotany uses and species.

Chord_sp <- ethnobotanyR::ethnoChord(ethnobotanydata, by = "sp_name")

The ethnoChord() function can also be used to create a chord diagram of ethnobotany uses and informants.

Chord_informant <- ethnobotanyR::ethnoChord(ethnobotanydata, by = "informant")

For an example of the application of a chord diagram in ethnobotany research see Tabuti et al. (2022) on values and challenges for woody species in Uganda and Mon et al. (2020) on fig species use in Myanmar.

Flow diagrams with ggalluvial

The ethno_alluvial() function uses the ggplot2 extension ggalluvial to make flow diagrams. This may be a useful way to visualize frequency distributions across uses, experts and use categories.

ethnobotanyR::ethno_alluvial(ethnobotanydata)

Generate the same plot with labels on the strata and without the legend.


# correct internal assignment for stat = "stratum" 
  StatStratum <- ggalluvial::StatStratum

ethnobotanyR::ethno_alluvial(ethnobotanydata, alpha = 0.2) + 
  ggplot2::theme(legend.position = "none") +  
             ggplot2::geom_label(stat = "stratum", 
                      ggplot2::aes(label = ggplot2::after_stat(stratum)))

For an exaple of the alluvial plot in ethnobotany paper see Mon et al. (2020) on the traditional knowledge of edible fig tree species in Myanmar.

ethnobotanyR indices functions

Ethnobotany indices are numerical measures that are used to quantify the importance of plant species in different cultural or ecological contexts. Some common ethnobotany indices are included here. These indices are often used to analyze ethnobotanical data and to compare the relative importance of different plant species within a particular culture or ecosystem.

The standard quantitative ethnobotany indices are probably too narrow a tool for a proper assessment of human and ecological interactions of interest. Still, they can be a useful entry way into understanding some aspects of human populations and how they interact with nature. The steps required to calculate these indices offer a way to quantify intangible factors of how human communities interact with the world. They can come in handy as additive pieces for more holistic assessments and analyses.

Use Report (UR) per species

The use report URs() is the most basic ethnobotany calculation. The function calculates the use report (UR) for each species in the data set. \[\begin{equation} UR_{s} = \sum_{u=u_1}^{^uNC} \sum_{i=i_1}^{^iN} UR_{ui} \end{equation}\]

URs() calculates the total uses for the species by all informants (from \(i_1\) to \(^iN\)) within each use-category for that species \((s)\). It is a count of the number of informants who mention each use-category \(NC\) for the species and the sum of all uses in each use-category (from \(u_1\) to \(^uNC\)) (see Prance et al. 1987).

ethnobotanyR::URs(ethnobotanydata)
#>   sp_name URs
#> 1    sp_c  52
#> 2    sp_a  43
#> 3    sp_d  43
#> 4    sp_b  36

The URsum() function calculates the sum of all ethnobotany use reports (UR) for all species in the data set (see Prance et al. 1987).

ethnobotanyR::URsum(ethnobotanydata)
#> [1] 174

Cultural Importance (CI) index

The CIs() function calculates the cultural importance index (CI) for each species in the data set.

\[\begin{equation} CI_{s} = \sum_{u=u_1}^{^uNC} \sum_{i=i_1}^{^iN} UR_{ui/N}. \end{equation}\]

CIs() is essentially URs() divided by the number of informants to account for the diversity of uses for the species (see Tardío and Pardo-de-Santayana 2008).

ethnobotanyR::CIs(ethnobotanydata)
#>   sp_name   CI
#> 1    sp_c 2.60
#> 2    sp_a 2.15
#> 3    sp_d 2.15
#> 4    sp_b 1.80

Frequency of Citation (FC) per species

The FCs() function calculates the frequency of citation (FC) for each species in the data set.

\[\begin{equation} FC_s = \sum_{i=i_1}^{^iN}{UR_i} \end{equation}\]

FCs() is the sum of informants that cite a use for the species (see Prance et al. 1987).

ethnobotanyR::FCs(ethnobotanydata)
#>   sp_name FCs
#> 1    sp_c  17
#> 2    sp_a  15
#> 3    sp_b  12
#> 4    sp_d  12

Number of Uses (NU) per species

The NUs() function calculates the number of uses (NU) for each species in the data set.

\[\begin{equation} NU_s = \sum_{u=u_1}^{^uNC} \end{equation}\]

\(NC\) are the number of use categories. NUs() is the sum of all categories for which a species is considered useful (see Prance et al. 1987).

ethnobotanyR::NUs(ethnobotanydata)
#>   sp_name NUs
#> 1    sp_c   8
#> 2    sp_d   8
#> 3    sp_a   7
#> 4    sp_b   7

Relative Frequency of Citation (RFC) index

The RFCs() function calculates the relative frequency of citation (RFC) for each species in the data set.

\[\begin{equation} RFC_s = \frac{FC_s}{N} = \frac{\sum_{i=i_1}^{^iN} UR_i}{N} \end{equation}\]

\(FC_s\) is the frequency of citation for each species \(s\), \(UR_i\) are the use reports for all informants \(i\) and \(N\) is the total number of informants interviewed in the survey (see Tardío and Pardo-de-Santayana 2008).

ethnobotanyR::RFCs(ethnobotanydata)
#>   sp_name RFCs
#> 1    sp_c 0.85
#> 2    sp_a 0.75
#> 3    sp_b 0.60
#> 4    sp_d 0.60

Relative Importance (RI) index

The RIs() function calculates the relative importance index (RI) for each species in the data set.

\[\begin{equation} RI_s = \frac{RFC_{s(max)}+RNU_{s(max)}}{2} \end{equation}\]

\(RFC_{s(max)}\) is the relative frequency of citation for the species \(s\) over the maximum, \(RNU_{s(max)}\) is the relative number of uses for \(s\) over the maximum (see Tardío and Pardo-de-Santayana 2008).

ethnobotanyR::RIs(ethnobotanydata)
#>   sp_name   RIs
#> 1    sp_c 1.000
#> 2    sp_a 0.879
#> 3    sp_d 0.853
#> 4    sp_b 0.790

Use Value (UV) index

The UVs() function calculates the use value (UV) index for each species in the data set.

\[\begin{equation} UV_{s} = \sum_{i=i_1}^{^iN} \sum_{u=u_1}^{^uNC} UR_{ui/N} \end{equation}\]

UVs() is essentially the same as CIs() except that it starts with the sum of UR groupings by informants. \(U_i\) is the number of different uses mentioned by each informant \(i\) and \(N\) is the total number of informants interviewed in the survey (see Tardío and Pardo-de-Santayana 2008).

ethnobotanyR::UVs(ethnobotanydata)
#>   sp_name   UV
#> 1    sp_c 2.60
#> 2    sp_a 2.15
#> 3    sp_d 2.15
#> 4    sp_b 1.80

The simple_UVs() function calculates the simplified use value (UV) index for each species in the data set.

\[\begin{equation} UV_{s} = \sum U_i/N \end{equation}\]

\(U_i\) is the number of different uses mentioned by each informant \(i\) and \(N\) is the total number of informants interviewed in the survey (see Ulysses P. Albuquerque et al. 2006).

Cultural Value (CVe) for ethnospecies

The CVe() function calculates the cultural value (CVe) for ethnospecies. The index is one of three proposed for assessing the cultural, practical and economic dimensions (ethno) species importance. Reyes-Garcia et al. (2006) suggest several more indices but \(CV_e\) is the most commonly used from that study (Reyes-García et al. 2006).

\[\begin{equation} CV_{e} = {Uc_{e}} \cdot{IC_{e}} \cdot \sum {IUc_{e}} \end{equation}\]

Where \(UC_e\) is the number of uses reported for ethnospecies \(e\) divided by all potential uses of an ethnospecies considered in the study. \(Ic_e\) expresses the number of informants who listed the ethnospecies \(e\) as useful divided by the total number of informants. \(IUc_e\) expresses the number of informants who mentioned each use of the ethnospecies \(e\) divided by the total number of informants (see Reyes-García et al. 2006).

ethnobotanyR::CVe(ethnobotanydata)
#> Joining, by = "sp_name"
#> Joining, by = "sp_name"
#>   sp_name   CVe
#> 1    sp_c 1.768
#> 2    sp_a 1.129
#> 3    sp_d 1.032
#> 4    sp_b 0.756

Fidelity Level (FL) per species

The FLs() function calculates the fidelity level (FL) per species in the study. It is a way of calculating the percentage of informants who use a plant for the same purpose as compared to all uses of the plant for any purpose.

\[\begin{equation} FL_{s} = \frac {N_{s}*100}{FC_{s}} \end{equation}\]

where \(N_s\) is the number of informants that use a particular plant for a specific purpose, and \(FC_s\) is the frequency of citation for the species (see Friedman et al. 1986).

ethnobotanyR::FLs(ethnobotanydata)
#>    sp_name Primary.use   FLs
#> 1     sp_a       Use_2 53.33
#> 2     sp_a       Use_3 60.00
#> 3     sp_a       Use_5 33.33
#> 4     sp_a       Use_6 46.67
#> 5     sp_a       Use_8 40.00
#> 6     sp_a       Use_9 33.33
#> 7     sp_a      Use_10 20.00
#> 8     sp_b       Use_1 50.00
#> 9     sp_b       Use_3 41.67
#> 10    sp_b       Use_4 33.33
#> 11    sp_b       Use_5 33.33
#> 12    sp_b       Use_6 41.67
#> 13    sp_b       Use_7 58.33
#> 14    sp_b       Use_9 41.67
#> 15    sp_c       Use_1 52.94
#> 16    sp_c       Use_2 41.18
#> 17    sp_c       Use_4 35.29
#> 18    sp_c       Use_5 17.65
#> 19    sp_c       Use_6 23.53
#> 20    sp_c       Use_7 29.41
#> 21    sp_c       Use_8 70.59
#> 22    sp_c      Use_10 35.29
#> 23    sp_d       Use_1 41.67
#> 24    sp_d       Use_2 25.00
#> 25    sp_d       Use_3 58.33
#> 26    sp_d       Use_5  8.33
#> 27    sp_d       Use_6 41.67
#> 28    sp_d       Use_7 66.67
#> 29    sp_d       Use_8 75.00
#> 30    sp_d       Use_9 41.67

Divide FLs by 100 to get the percent FL, as it is reported in some studies.

Plot all indices

For quick assessments of differences between indices use the Radial_plot function to show ethnobotanyR results as a radial bar plot using the ggplot2 library. The cowplot package (Wilke 2020) can be useful for comparing several Radial_plot results for easy comparison across indices.

URs_plot <- ethnobotanyR::Radial_plot(ethnobotanydata, ethnobotanyR::URs)
#> Scale for y is already present.
#> Adding another scale for y, which will replace the existing scale.

NUs_plot <- ethnobotanyR::Radial_plot(ethnobotanydata, ethnobotanyR::NUs)
#> Scale for y is already present.
#> Adding another scale for y, which will replace the existing scale.

FCs_plot <- ethnobotanyR::Radial_plot(ethnobotanydata, ethnobotanyR::FCs)
#> Scale for y is already present.
#> Adding another scale for y, which will replace the existing scale.

CIs_plot <- ethnobotanyR::Radial_plot(ethnobotanydata, ethnobotanyR::CIs)
#> Scale for y is already present.
#> Adding another scale for y, which will replace the existing scale.

cowplot::plot_grid(URs_plot, NUs_plot, FCs_plot, CIs_plot, 
    labels = c('URs', 'NUs', 'FCs', 'CIs'), 
    nrow = 2, 
    align="hv",
    label_size = 12)

Despite their popularity, ethnobotany indices have been criticized for not accurately capturing the complexity and diversity of human-plant relationships. They may oversimplify or overlook important cultural or ecological factors. Additionally, ethnobotany indices are often based on subjective judgments and may be influenced by cultural biases or other factors that can affect the results of the analysis. Still, it is important to have an overview of ethnobotany indices, as they can provide useful insights into the role of plants in different cultural and ecological contexts. Additionally, understanding the background theory and limitations of these indices can help researchers to critically evaluate and interpret ethnobotanical data, and to design more accurate and comprehensive studies of human-plant interactions. Further exploratory methods may be helpful in understanding important relationships.

Exploratory analyses

For the following examples we create some ethnobotany data for use in ethnobotanyR.

eb_data <- data.frame(replicate(10,sample(0:1,20,rep=TRUE)))
names(eb_data) <- gsub(x = names(eb_data), pattern = "X", replacement = "Use_")  
eb_data$informant <- sample(c('User_1', 'User_2', 'User_3'), 20, replace=TRUE)
eb_data$sp_name <- sample(c('sp_1', 'sp_2', 'sp_3', 'sp_4'), 20, replace=TRUE)

Ordination methods

Detrended correspondence analysis (DCA) and principal component analysis (PCA) are statistical techniques that can be useful for exploring patterns and trends in ethnobotany data. DCA is a multivariate statistical technique that is used to analyze patterns of species abundance or occurrence in relation to environmental variables, and to identify species groups or communities that are associated with different environmental conditions. PCA, on the other hand, is a statistical method that is used to identify the underlying structure of a dataset by reducing the number of variables and identifying the most important or influential factors.

Both DCA and PCA can be useful tools for exploratory analysis of ethnobotany data, as they can help to identify patterns and trends in the data that may not be immediately apparent. However, it is important for researchers to be aware of the limitations of these techniques and to use them with caution, as they can be sensitive to certain types of data and may not always produce reliable results.

In order to use these techniques effectively, it is important for researchers to have access to programming tools that allow them to run the analyses. The ethnobptanyR package offers a few handy tools to make these work with standard quantitative ethnobotany data. By having access to these tools, researchers can more easily and efficiently run these analyses and incorporate the results into their research projects.

Overall, it is important for researchers to be aware of tools like DCA and PCA and to have access to programming tools that allow them to run these analyses. These tools can be valuable tools for exploring and interpreting ethnobotany data, but they should be used with caution and within the confines of the predetermined research aims and objectives.

Detrended correspondence analysis (DCA)

Detrended correspondence analysis (DCA) can be used to find the main factors or ‘gradients’ in large and sparse community data sets. This can be a useful tool for assessing important informant-species-use associations in ethnobotany. Here we use the data set presented in eb_data to perform DCA using the decorana() function in the vegan package (Oksanen et al. 2022).

The first step is to remove zero value row sums. The DCA can only work with data that is complete (i.e. we remove all NA cases as well as those where the species is listed by an informant but no specific use is recorded). This can be done quickly using the select() and filter_all() functions of the dplyr package (Wickham et al. 2022) and pipe %>% functions of the magrittr package (Bache and Wickham 2022).


#remove rows with zero rowsums
ethno_data_complete <- eb_data %>%  
  dplyr::select(-informant, -sp_name) %>% 
  dplyr::filter_all(any_vars(!is.na(.)))%>%
    dplyr::filter_all(any_vars(. != 0))

Use the decorana function of the vegan package (Oksanen et al. 2022) to get the ordination results.

#Save ordination results
 ethno_ordination <- vegan::decorana(ethno_data_complete) 

Ordination results can be shown with the command summary() and the argument for the named ordination, i.e. summary(ethno_ordination) in our case. Likewise, ordination scores can be extracted with scores(). Calling the plot() function on the ordination results will plot the scores from the ordination.

#Plot ordination results
plot(ethno_ordination)

Principal component analysis (PCA)

Principal component analysis (PCA) can be used to create sets of linearly uncorrelated variables from cases of informant-species-use associations. The resulting principal components are linear combinations of variables that are fed in and each contain all observations. We perform PCA using the broom (Robinson, Hayes, and Couch 2022), tidyr (Wickham and Girlich 2022) and purrr (Henry and Wickham 2022) packages using the nest() function along with the mutate() and map() functions to operate on the nested columns. This gives a tibble with one row and three columns: 1. our original data set, 2. the prcomp object and 3. a data frame of principal component values for each observation.

nested_ethno_pca <- eb_data %>% 
  tidyr::nest(., data = everything()) %>% 
  dplyr::mutate(pca = purrr::map(data, ~ stats::prcomp(.x %>% 
        dplyr::select(-informant, -sp_name), 
        center = TRUE, scale = TRUE)),
         pca_augmented = map2(pca, data, ~broom::augment(.x, data = .y)))

For PCA model evaluation we can check to see how much variance is explained by each principal component. This tells us how many of the components would be reasonable to assess when analyzing the results. To do this, we can use the data in the pca_augmented column of our nested_ethno_pca tibble along with dplyr (Wickham et al. 2022) and magrittr (Bache and Wickham 2022) functions.

var_exp_tidy <- nested_ethno_pca %>% 
  tidyr::unnest(pca_augmented) %>% 
  dplyr::summarize_at(.vars = dplyr::vars(contains("PC", ignore.case = FALSE)), .funs = tibble::lst(var)) %>% 
  tidyr::gather(key = pc, value = variance) %>% 
  dplyr::mutate(var_exp = variance/sum(variance),
         cum_var_exp = cumsum(var_exp),
         pc = stringr::str_replace(pc, ".fitted", ""))

The 10 principle components selected explain 1% of variance. As a general rule the first few principal components explain much of the variation. To keep the analysis within reasonable bounds it makes sense to select the first four principle components (this choice may change according to the analysis).

var_exp <- var_exp_tidy %>% 
  head(4)

Plot the variance explained and the cumulative variance explained to see trends across components.

var_exp %>% 
  dplyr::rename(
    `Variance Explained` = var_exp,
    `Cumulative Variance Explained` = cum_var_exp
  ) %>% 
  tidyr::gather(key = key, value = value, `Variance Explained`:`Cumulative Variance Explained`) %>% 
  ggplot2::ggplot(ggplot2::aes(pc, value, group = key)) + 
  ggplot2::geom_point() + 
  ggplot2::geom_line() + 
  ggplot2::facet_wrap(~key, scales = "free_y") +
  ggplot2::theme_minimal() +
  ggplot2::lims(y = c(0, 1)) +
  ggplot2::labs(y = "Variance",
       title = "Variance explained by each principal component")

Conclusions

Quantitative ethnobotany offers a way to study the use and importance of plants in human cultures, using statistical and analytical methods to quantify and interpret data. This approach can be useful in a variety of contexts, including understanding the cultural and ecological significance of plant species, evaluating the impact of human activities on plant communities, and conserving plant biodiversity.

One of the main benefits of quantitative ethnobotany is that it allows researchers to rigorously and systematically analyze and interpret data, providing more reliable and objective insights into the role of plants in different cultural and ecological settings. By using standardized methods and statistical analyses, researchers can more accurately compare and contrast the importance of different plant species and evaluate the significance of their findings.

In addition, the development of a set of standard practices and guidelines for quantitative ethnobotany can be helpful for the field in several ways. First, standard practices can help to ensure the reliability and validity of research findings, by providing a consistent and transparent approach to data collection, analysis, and interpretation. Second, standard practices can facilitate the sharing and dissemination of research findings, by providing a common language and framework for communication and collaboration among researchers. Finally, standard practices can help to advance the field of ethnobotany by promoting the use of rigorous and transparent methods, and by encouraging the development of new and innovative approaches to understanding the role of plants in human cultures.

Acknowledgements

This work was written and formatted using the handy tools provided by the knitr package (Xie 2022).

References

Albuquerque, Ulysses Paulino, Patricia Muniz de Medeiros, Washington Soares Ferreira Júnior, Taline Cristina da Silva, Rafael Ricardo Vasconcelos da Silva, and Thiago Gonçalves-Souza. 2019. “Social-Ecological Theory of Maximization: Basic Concepts and Two Initial Models.” Biological Theory, February. https://doi.org/10.1007/s13752-019-00316-8.
Albuquerque, Ulysses P., Reinaldo FP Lucena, Júlio M. Monteiro, Alissandra TN Florentino, and Cecília de Fátima CBR Almeida. 2006. “Evaluating Two Quantitative Ethnobotanical Techniques.” Ethnobotany Research and Applications 4: 51–60. https://doi.org/http://hdl.handle.net/10125/237.
Albuquerque, UP de, and J. A. Hurrell. 2010. “Ethnobotany: One Concept and Many Interpretations.” Albuquerque U, Hanazaki N: Recent Developments and Case Studies in Ethnobotany, 87–99.
Bache, Stefan Milton, and Hadley Wickham. 2022. Magrittr: A Forward-Pipe Operator for r. https://CRAN.R-project.org/package=magrittr.
Friedman, J., Z. Yaniv, A. Dafni, and D. Palewitch. 1986. A Preliminary Classification of the Healing Potential of Medicinal Plants, Based on a Rational Analysis of an Ethnopharmacological Field Survey Among Bedouins in the Negev Desert, Israel.” Journal of Ethnopharmacology 16 (2-3): 275–87.
Gu, Zuguang. 2022. Circlize: Circular Visualization. https://CRAN.R-project.org/package=circlize.
Henry, Lionel, and Hadley Wickham. 2022. Purrr: Functional Programming Tools. https://CRAN.R-project.org/package=purrr.
Mon, Aye Mya, Yinxian Shi, Xuefei Yang, Pyae Phyo Hein, Thaung Naing Oo, Cory Whitney, and Yongping Yang. 2020. “The Uses of Fig (Ficus) by Five Ethnic Minority Communities in Southern Shan State, Myanmar.” Journal of Ethnobiology and Ethnomedicine 16 (5). https://doi.org/10.1186/s13002-020-00406-z.
Oksanen, Jari, Gavin L. Simpson, F. Guillaume Blanchet, Roeland Kindt, Pierre Legendre, Peter R. Minchin, R. B. O’Hara, et al. 2022. Vegan: Community Ecology Package. https://github.com/vegandevs/vegan.
Prance, G. T., W. Baleé, B. M. Boom, and R. L. Carneiro. 1987. “Quantitative Ethnobotany and the Case for Conservation in Amazonia.” Conservation Biology 1 (4): 296–310.
R Core Team. 2022. R: A Language and Environment for Statistical Computing. Vienna, Austria: R Foundation for Statistical Computing. https://www.R-project.org/.
Reyes-García, V., T. Huanca, V. Vadez, and W. Leonard…. 2006. “Cultural, Practical, and Economic Value of Wild Plants: A Quantitative Study in the Bolivian Amazon.” Economic Botany.
Robinson, David, Alex Hayes, and Simon Couch. 2022. Broom: Convert Statistical Objects into Tidy Tibbles. https://CRAN.R-project.org/package=broom.
Tabuti, John Robert Stephen, Esther Patricia Adoch, Christopher Mawa, and Cory Whitney. 2022. “Priority Species and Management Approaches for Woody Species: A Case Study of Awach Sub-County, Gulu District, Uganda.” Human Ecology, November. https://doi.org/10.1007/s10745-022-00360-2.
Tardío, Javier, and Manuel Pardo-de-Santayana. 2008. “Cultural Importance Indices: A Comparative Analysis Based on the Useful Wild Plants of Southern Cantabria (Northern Spain) 1.” Economic Botany 62 (1): 24–39.
Whitney, Cory. 2022. ethnobotanyR: Calculate Quantitative Ethnobotany Indices. https://CRAN.R-project.org/package=ethnobotanyR.
Whitney, Cory, Joseph Bahati, and J. Gebauer. 2018. “Ethnobotany and Agrobiodiversity; Valuation of Plants in the Homegardens of Southwestern Uganda.” Ethnobiology Letters 9 (2): 90–100. https://doi.org/10.14237/ebl.9.2.2018.503.
Wickham, Hadley, Romain François, Lionel Henry, and Kirill Müller. 2022. Dplyr: A Grammar of Data Manipulation. https://CRAN.R-project.org/package=dplyr.
Wickham, Hadley, and Maximilian Girlich. 2022. Tidyr: Tidy Messy Data. https://CRAN.R-project.org/package=tidyr.
Wilke, Claus O. 2020. Cowplot: Streamlined Plot Theme and Plot Annotations for Ggplot2. https://wilkelab.org/cowplot/.
Xie, Yihui. 2022. Knitr: A General-Purpose Package for Dynamic Report Generation in r. https://yihui.org/knitr/.

  1. Please remember to cite this package if you use it in your publications. Use the R command citation("ethnobotanyR") to get the citation to the your loaded version of the package.↩︎

  2. The example ethnobotanydata is included with the ethnobotanyR package but can also be downloaded from GitHub https://github.com/CWWhitney/ethnobotanyR/tree/master/data.↩︎