The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.
leafareaR provides a workflow for leaf area analysis
based on leaf length (L), leaf width (W), and
observed leaf area (LA). The package includes tools for
input validation, predictor generation, model fitting, model evaluation
and ranking, equation extraction, prediction, graphics, and an
interactive Shiny application.
A typical analysis in leafareaR follows six steps:
The package includes a sample dataset named
leafarea_sample. The example below shows only the core
variables used in most analyses.
| L | W | LA |
|---|---|---|
| 7.539 | 0.974 | 4.878 |
| 6.423 | 1.304 | 6.032 |
| 5.960 | 3.128 | 10.663 |
| 4.041 | 2.159 | 5.750 |
| 8.492 | 1.920 | 9.030 |
| 4.680 | 2.184 | 6.846 |
Additional grouping variables such as block,
species, and genotype may also be present and
can be used in mixed-model workflows.
The first step is to validate the required variables and, when
needed, create derived predictors from L and
W.
dat <- la_validate_input(leafarea_sample)
dat2 <- la_create_derived(
dat,
variables = c("LW", "L2", "W2", "L3", "W3", "L_plus_W")
)A compact descriptive summary of selected variables is shown below.
| Variable | Mean | SD | Min | Max |
|---|---|---|---|---|
| L | 5.871 | 2.144 | 1.454 | 13.892 |
| W | 2.165 | 1.146 | 0.238 | 6.572 |
| LA | 8.600 | 6.631 | 1.000 | 48.671 |
| LW | 13.848 | 11.170 | 1.275 | 76.265 |
Linear candidate models can be fitted directly from the prepared data and then ranked according to the selected evaluation criteria.
fit_linear <- la_fit_linear_models(dat2)
met_linear <- la_evaluate_linear_models(fit_linear)
ranked_linear <- la_rank_models(met_linear)For illustration, the next table shows only the three best-ranked linear models.
| Model | RMSE | MAE | R2 | AIC |
|---|---|---|---|---|
| lm_full_poly3 | 1.1985 | 0.6587 | 0.9673 | 32014.47 |
| lm_full_poly2 | 1.2014 | 0.6598 | 0.9672 | 32059.03 |
| lm_L_plus_W_plus_LW | 1.2028 | 0.6611 | 0.9671 | 32078.25 |
In this example, the top-ranked model is lm_full_poly3.
A readable equation can be obtained from the selected model.
LA = -0.1013 - 0.3075 * L + 0.8508 * W + 0.4653 * L × W + 0.0939 * L² - 0.0853 * W² - 0.0042 * L³ + 0.0142 * W³
This equation can be reported directly or used as the basis for prediction.
Predictions can be generated from the top-ranked model for a new set of observations.
pred <- la_predict_top_ranked(
ranked_table = ranked_linear,
fit_object = fit_linear,
rank_position = 1,
newdata = dat2[1:10, ]
)A small subset of the prediction output is shown below.
| Observed LA | Predicted LA | Residual |
|---|---|---|
| 4.878 | 5.2823 | -0.4043 |
| 6.032 | 5.5693 | 0.4627 |
| 10.663 | 11.4407 | -0.7777 |
| 5.750 | 5.5514 | 0.1986 |
| 9.030 | 10.4746 | -1.4446 |
| 6.846 | 6.4371 | 0.4089 |
The package also includes simple graphics for exploratory analysis and model inspection.
The same general strategy can be extended to nonlinear and mixed models: fit, evaluate, rank, inspect the selected equation, and predict.
fit_nonlinear <- la_fit_nonlinear_models(dat2, models = c("power_LW"))
met_nonlinear <- la_evaluate_nonlinear_models(fit_nonlinear)
ranked_nonlinear <- la_rank_models(met_nonlinear)
fit_mixed <- la_fit_mixed_models(dat2, group_var = "species")
met_mixed <- la_evaluate_mixed_models(fit_mixed)
ranked_mixed <- la_rank_models(met_mixed)leafareaR also provides a Shiny application for
interactive analysis.
The application can be used to load the built-in example dataset
(leafarea_sample) or upload your own data, then select
predictors, fit and compare candidate models, inspect equations, and
export results and graphics.
leafareaR provides a reproducible workflow for leaf area
analysis, from data preparation to model comparison, equation reporting,
prediction, and visualization. The package can be used both in
script-based analyses and through its interactive Shiny interface.
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.