How EasyAnalysis computes things
The function behind each analysis, the variables it needs, the options it exposes and what it produces. If you are publishing a result, this is what to cite alongside the tool.
Machine learning
XGBoost
Gradient-boosted trees for regression or classification. Strong on tabular data; cross-validation picks the number of rounds for you.
Computed with: xgboost::xgb.cv(), xgboost::xgb.DMatrix(), xgboost::xgb.importance(), xgboost::xgb.train()
Variables it needs
| Role | Shown as | Accepts | Note |
|---|---|---|---|
y | Response variable (Y) | any | |
x | Predictor variables (X) | numeric | Numeric columns only - XGBoost needs a numeric matrix. |
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
obj_type | Task type | sel | Regression, Binary classification, Multiclass |
nrounds | Boosting rounds | num | 100 |
eta | Learning rate | num | 0.1 |
max_depth | Max tree depth | num | 6 |
subsample | Row subsample | num | 0.8 |
colsample | Column subsample | num | 0.8 |
min_child | Min child weight | num | 1 |
use_cv | Cross-validation (xgb.cv) | chk | TRUE |
nfold | CV folds | num | 5 |
Results shown: Training Curve · Feature Importance · Predictions
Support Vector Machine
SVM for regression or classification. Strong with many predictors; the kernel decides how flexible the boundary is.
Computed with: e1071::svm()
Variables it needs
| Role | Shown as | Accepts | Note |
|---|---|---|---|
y | Response variable (Y) | any | |
x | Predictor variables (X) | numeric | Numeric columns only. |
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
svm_type | Task type | sel | Regression (eps-SVR), Classification (C), Classification (nu) |
kernel | Kernel | sel | Radial (RBF), Linear, Polynomial, Sigmoid |
cost | Cost (C) | num | 1 |
gamma | Gamma (0 = 1/n predictors) | num | 0 |
degree | Polynomial degree | num | 3 |
epsilon | Epsilon (tube width) | num | 0.1 |
scale_x | Scale predictors | chk | TRUE |
cross_val | e1071 built-in 5-fold check | chk | FALSE |
cv_method | Validation | sel | K-fold, LOOCV (leave-one-out) |
cv_k | Number of folds (k) | num | 5 |
Results shown: Performance · Support Vectors · Prediction Table
Decision Tree
A single readable tree of if/then splits. Good when you need to explain the rule, not just the prediction.
Computed with: rpart::prune(), rpart::rpart(), rpart::rpart.control()
Variables it needs
| Role | Shown as | Accepts | Note |
|---|---|---|---|
y | Response variable (Y) | any | |
x | Predictor variables (X) | any | Numbers or categories - a tree handles both. |
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
tree_type | Tree type | sel | Regression (numeric Y), Classification (category Y) |
maxdepth | Max depth | num | 5 |
minsplit | Min rows to attempt a split | num | 20 |
minbucket | Min rows in a leaf | num | 7 |
cp | Complexity parameter (cp) | num | 0.01 |
use_cv | Prune using rpart's internal cross-validation | chk | TRUE |
cv_method | Hold-out validation | sel | K-fold, LOOCV (leave-one-out) |
cv_k | Number of folds (k) | num | 5 |
Results shown: Tree diagram · CP / pruning · Variable importance · Performance
Neural Network
A single hidden layer network. Flexible, but needs scaled inputs and enough rows; weight decay keeps it from memorising the training data.
Computed with: nnet::nnet()
Variables it needs
| Role | Shown as | Accepts | Note |
|---|---|---|---|
y | Response variable (Y) | any | |
x | Predictor variables (X) | numeric | Numeric columns only. |
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
nn_type | Task type | sel | Regression (numeric Y), Classification (category Y) |
size | Hidden units | num | 5 |
decay | Weight decay (L2) | num | 0.01 |
maxit | Max iterations | num | 300 |
n_init | Random restarts | num | 3 |
scale_x | Scale predictors (recommended) | chk | TRUE |
cv_method | Validation | sel | K-fold, LOOCV (leave-one-out) |
cv_k | Number of folds (k) | num | 5 |
Results shown: Performance · Predictions · Network Info
Random Forest
Many decision trees averaged together. Strong default choice for tabular data, and it reports which predictors carried the signal.
Computed with: randomForest::randomForest(), randomForest::rfcv()
Variables it needs
| Role | Shown as | Accepts | Note |
|---|---|---|---|
y | Target variable | any | |
x | Predictors | any | |
pdp_var | Partial-dependence variable | any | Pick one, then press the button below the Run button. |
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
ntree | Number of trees | num | 500 |
run_cv | Also run 10-fold CV (slow) | chk | FALSE |
Results shown: Model summary · Variable importance · Performance · Partial dependence
Multivariate
PCA / Factor analysis / MDS
Reduce many correlated variables to a few dimensions, and see which variables drive them.
Computed with: stats::prcomp()
Variables it needs
| Role | Shown as | Accepts | Note |
|---|---|---|---|
vars | Variables | numeric | At least 2 numeric columns. |
colour | Colour points by | categorical | Optional - groups the score plot. |
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
mode | Method | sel | Principal Component Analysis (PCA), Factor Analysis (FA), Multidimensional Scaling (MDS) |
scale_vars | Scale variables (recommended) | chk | TRUE |
n_comp | Components / factors / dimensions | num | 2 |
fa_rotation | Rotation | sel | varimax, promax, none |
fa_method | Factor method | sel | Maximum likelihood, Principal axis |
mds_dist | Distance metric | sel | euclidean, manhattan, maximum, canberra |
pc_x | X-axis component | num | 1 |
pc_y | Y-axis component | num | 2 |
Results shown: Main plot · Scree / variance · Loadings · Summary table
Regression
Ordinal regression
For an ordered outcome (low / medium / high, or a Likert scale). Models the odds of being at or below each level.
Computed with: MASS::polr()
Variables it needs
| Role | Shown as | Accepts | Note |
|---|---|---|---|
y | Ordered outcome | ordered | Its levels are taken in the order they appear; reorder the column first if that is wrong. |
x | Predictors | any |
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
method | Link function | sel | Logistic (proportional odds), Probit, Complementary log-log |
Results shown: Model summary · Coefficients · Odds ratios · Interpretation
Robust regression
Linear regression that is not dragged around by outliers. Use it when a few extreme points distort an ordinary fit.
Computed with: MASS::psi.bisquare(), MASS::psi.hampel(), MASS::psi.huber(), MASS::rlm()
Variables it needs
| Role | Shown as | Accepts | Note |
|---|---|---|---|
y | Response | numeric | |
x | Predictors | any |
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
psi | Weighting function | sel | Huber (default), Tukey bisquare, Hampel |
Results shown: Model summary · Coefficients · Fit quality · Down-weighted rows
Poisson regression (counts)
For counts: number of stems, events, defects. Models the log of the expected count.
Computed with: stats::glm()
Variables it needs
| Role | Shown as | Accepts | Note |
|---|---|---|---|
y | Count response | count | Whole numbers, zero or greater. |
x | Predictors | any | |
offset | Exposure / offset (optional) | numeric | Area, time or effort each count was observed over. Entered as log(offset). |
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
link | Link function | sel | log, identity, sqrt |
Results shown: Model summary · Coefficients · Rate ratios · Overdispersion check
Negative binomial (overdispersed counts)
Counts whose spread is wider than Poisson allows. Use when the Poisson overdispersion check says so.
Computed with: MASS::glm.nb()
Variables it needs
| Role | Shown as | Accepts | Note |
|---|---|---|---|
y | Count response | count | |
x | Predictors | any |
Results shown: Model summary · Coefficients · Rate ratios · Dispersion (theta)
GAM (smooth curves)
Generalised additive model: fits a smooth curve per predictor instead of a straight line, and reports how much that curvature actually bought you over a linear fit.
Computed with: mgcv::gam(), mgcv::s(), stats::lm()
Variables it needs
| Role | Shown as | Accepts | Note |
|---|---|---|---|
y | Response | numeric | |
x | Predictors | numeric | Each gets its own smooth term. |
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
k_basis | Basis dimension (k) | num | 10 |
smooth_type | Smooth type | sel | Thin plate (tp), Cubic regression (cr), P-spline (ps) |
method | Smoothness selection | sel | REML, GCV.Cp, ML |
cv_method | Validation | sel | K-fold, LOOCV (leave-one-out) |
cv_k | Number of folds (k) | num | 5 |
Results shown: Smooth plots · Model comparison · GAM summary · Validation & metrics
GLMM (generalised mixed effects)
Mixed effects for a NON-normal response - binary, counts, proportions - with random intercepts and slopes.
Computed with: lme4::glmer()
Variables it needs
| Role | Shown as | Accepts | Note |
|---|---|---|---|
y | Response | any | Binary (2 levels) for binomial; whole numbers for Poisson. |
x | Fixed effects | any | |
g | Grouping variable(s) | categorical | Plot, site, subject... Several gives crossed random effects. |
slope | Random slope (optional) | numeric | Leave empty for random intercepts only. |
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
family | Family | sel | Binomial (yes/no), Poisson (counts) |
nested | Several grouping variables are | sel | Crossed (1|a) + (1|b), Nested (1|a/b) |
Results shown: Model summary · Fixed effects · Random effects · Convergence & fit
Statistics
Survival analysis
Time-to-event data: Kaplan-Meier curves, a log-rank test between groups, and Cox proportional hazards.
Computed with: survival::cox.zph(), survival::coxph(), survival::Surv(), survival::survdiff(), survival::survfit()
Variables it needs
| Role | Shown as | Accepts | Note |
|---|---|---|---|
time | Time to event | numeric | How long until the event, or until the subject was last seen. |
event | Event indicator | any | 1 = the event happened, 0 = censored (lost/still alive). |
group | Compare groups by | categorical | Optional - splits the curves and enables the log-rank test. |
covars | Cox covariates | any | Optional - fits a Cox proportional-hazards model. |
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
cox_ties | Efron method for tied times | chk | TRUE |
conf_level | Confidence level | num | 0.95 |
km_conf | Show confidence bands | chk | TRUE |
km_censor | Mark censored observations | chk | TRUE |
Results shown: Kaplan-Meier · Cox PH model · Log-rank test · Survival table
ANOVA (one-way)
Compares the mean of a numeric variable across groups, then Tukey HSD tells you which groups actually differ.
Computed with: stats::aov()
Variables it needs
| Role | Shown as | Accepts | Note |
|---|---|---|---|
y | Numeric variable | numeric | The measurement being compared. |
x | Grouping variable | categorical | Needs at least 2 groups. |
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
diag_mode | Diagnostic plots | sel | Both side by side, One at a time |
diag_which | Which plot | sel | Residuals vs fitted, Normal Q-Q |
Results shown: Results · Tukey HSD · Diagnostics · Effect size & LOOCV
Hydrology
TWI (Topographic Wetness Index)
Approximate: contributing area is the cell area, with no flow routing.
Computed with: terra::res(), terra::terrain()
Takes: DEM (input raster) (raster)
Produces: a raster layer
Flow direction (D8)
D8 flow direction from terra.
Computed with: terra::terrain()
Takes: DEM (input raster) (raster)
Produces: a raster layer
Stream extraction (slope threshold)
Marks cells steeper than the threshold. A slope proxy, not a channel network.
Computed with: terra::terrain()
Takes: DEM (input raster) (raster)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
thr | Slope threshold (degrees) | num | 8 |
Produces: a raster layer
Slope x contributing area
Approximate: contributing area is the cell area, with no flow routing.
Computed with: terra::res(), terra::terrain()
Takes: DEM (input raster) (raster)
Produces: a raster layer
Fill depressions (whitebox)
True depression filling. Requires the whitebox package.
Computed with: terra::rast(), terra::writeRaster(), whitebox::install_whitebox(), whitebox::wbt_fill_depressions()
Takes: DEM (input raster) (raster)
Produces: a raster layer
Flow accumulation (whitebox)
Fills depressions, then D8 accumulation in cells. Requires whitebox.
Computed with: terra::rast(), terra::writeRaster(), whitebox::install_whitebox(), whitebox::wbt_d8_flow_accumulation(), whitebox::wbt_fill_depressions()
Takes: DEM (input raster) (raster)
Produces: a raster layer
Raster
Clip raster to vector layer
Crops and masks the raster to a polygon layer, reprojecting it to match.
Computed with: sf::st_transform(), terra::crop(), terra::crs(), terra::vect()
Takes: Input raster (raster), Clip polygons (vector layer) (vector)
Produces: a raster layer
Mosaic rasters
Merges several rasters into one.
Computed with: terra::mosaic(), terra::sprc()
Takes: Rasters to merge (raster)
Produces: a raster layer
Reproject raster
Warps the raster to another CRS.
Computed with: terra::project()
Takes: Input raster (raster)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
crs | Target CRS | crs | EPSG:3067 |
Produces: a raster layer
Resample resolution
Resamples to a new cell size.
Computed with: terra::crs(), terra::ext(), terra::rast(), terra::resample()
Takes: Input raster (raster)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
res_x | X resolution (map units) | num | 10 |
res_y | Y resolution (map units) | num | 10 |
method | Method | sel | bilinear, near, cubic, cubicspline, lanczos |
Produces: a raster layer
Band calculator
Arbitrary formula over the bands.
Computed with: terra::nlyr()
Takes: Input raster (raster)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
formula | Formula | txt | (b4-b3)/(b4+b3) |
Produces: a raster layer
NDVI (vegetation index)
(NIR - Red) / (NIR + Red)
Takes: Input raster (raster)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
x | NIR band | band | 4 |
y | Red band | band | 3 |
Produces: a raster layer
NDWI (water index)
(Green - NIR) / (Green + NIR)
Takes: Input raster (raster)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
x | Green band | band | 2 |
y | NIR band | band | 4 |
Produces: a raster layer
NBR (burn ratio)
(NIR - SWIR) / (NIR + SWIR)
Takes: Input raster (raster)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
x | NIR band | band | 4 |
y | SWIR band | band | 6 |
Produces: a raster layer
NDRE (red-edge index)
(RedEdge - Red) / (RedEdge + Red)
Takes: Input raster (raster)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
x | RedEdge band | band | 5 |
y | Red band | band | 3 |
Produces: a raster layer
Focal Mean Filter
Smooths raster cell values using a moving window mean.
Computed with: terra::focal()
Takes: Input raster (raster)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
size | Window size (cells) | num | 3 |
Produces: a raster layer
Focal Standard Deviation Filter
Computes local variance/SD using a moving window.
Computed with: terra::focal()
Takes: Input raster (raster)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
size | Window size (cells) | num | 3 |
Produces: a raster layer
Mask Value Range
Masks out raster cells outside a specified min and max range.
Computed with: terra::clamp()
Takes: Input raster (raster)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
min_val | Min Value | num | 0 |
max_val | Max Value | num | 100 |
Produces: a raster layer
Reclassify Raster
Reclassifies raster values into discrete numeric classes.
Computed with: terra::classify()
Takes: Input raster (raster)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
rcl | Reclass matrix (from, to, new_val; comma-separated) | txt | 0,10,1, 10,50,2, 50,100,3 |
Produces: a raster layer
LiDAR Structural Metrics Grid
Computes canopy metrics (mean Z, P95, density) across cells.
Computed with: lidR::pixel_metrics()
Takes: Point cloud (las)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
res | Grid Resolution (m) | num | 10 |
Produces: a raster layer
Surfaces & LiDAR
DTM (Digital Terrain Model)
Bare-earth elevation, interpolated from ground returns (TIN).
Computed with: lidR::rasterize_terrain(), lidR::tin()
Takes: Point cloud (las)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
res | Resolution (m) | num | 1 |
Produces: a raster layer
DSM (Digital Surface Model)
Top-of-surface elevation, highest return per cell (points-to-raster).
Computed with: lidR::p2r(), lidR::rasterize_canopy()
Takes: Point cloud (las)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
res | Resolution (m) | num | 1 |
Produces: a raster layer
CHM (Canopy Height Model)
Canopy height surface using the pit-free algorithm.
Computed with: lidR::pitfree(), lidR::rasterize_canopy()
Takes: Point cloud (las)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
res | Resolution (m) | num | 0.5 |
thresholds | Pit-free thresholds (comma-separated) | txt | 0, 5, 10, 15, 20, 25 |
Produces: a raster layer
nDSM (Normalized Surface Model)
Height above ground: DSM minus DTM, computed in one pass.
Computed with: lidR::p2r(), lidR::rasterize_canopy(), lidR::rasterize_terrain(), lidR::tin()
Takes: Point cloud (las)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
res | Resolution (m) | num | 1 |
Produces: a raster layer
ITD (Individual Tree Detection)
Locate treetops on a canopy height model with a local maximum filter.
Computed with: lidR::lmf(), lidR::locate_trees()
Takes: Canopy height model (raster)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
a | Window size: a | num | 1.2 |
b | Window size: b | num | 0.003 |
Produces: a vector layer
Terrain
TPI (Topographic Position Index)
Cell height relative to its neighbourhood.
Computed with: terra::terrain()
Takes: DEM (input raster) (raster)
Produces: a raster layer
TRI (Terrain Ruggedness Index)
Mean elevation difference to neighbouring cells.
Computed with: terra::terrain()
Takes: DEM (input raster) (raster)
Produces: a raster layer
Roughness
Elevation range within the neighbourhood.
Computed with: terra::terrain()
Takes: DEM (input raster) (raster)
Produces: a raster layer
Slope (degrees)
Steepness in degrees.
Computed with: terra::terrain()
Takes: DEM (input raster) (raster)
Produces: a raster layer
Slope (percent rise)
Steepness as percent rise.
Computed with: terra::terrain()
Takes: DEM (input raster) (raster)
Produces: a raster layer
Aspect
Downslope compass direction, in degrees.
Computed with: terra::terrain()
Takes: DEM (input raster) (raster)
Produces: a raster layer
Hillshade
Shaded relief for a given sun position.
Computed with: terra::shade(), terra::terrain()
Takes: DEM (input raster) (raster)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
alt | Sun altitude (degrees) | num | 45 |
azim | Sun azimuth (degrees) | num | 315 |
Produces: a raster layer
Profile curvature
Curvature along the slope: negative where the slope steepens (Zevenbergen & Thorne).
Takes: DEM (input raster) (raster)
Produces: a raster layer
Plan curvature
Curvature across the slope: positive on ridges, negative in hollows.
Takes: DEM (input raster) (raster)
Produces: a raster layer
Vector
Attributes to Table
Makes a vector layer's attribute table available as a dataset, so any statistical method can model it. Keeps a link back to the layer so results can be written onto the features afterwards.
Computed with: sf::st_drop_geometry()
Takes: Vector layer (vector)
Produces: a table layer
XY Coordinates to Vector
Converts tabular X and Y coordinate columns to a spatial point layer.
Computed with: sf::st_as_sf()
Takes: Tabular dataset (table)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
x_col | X Coordinate Column (Easting/Lon) | field | |
y_col | Y Coordinate Column (Northing/Lat) | field | |
crs | Target CRS | crs | EPSG:4326 |
Produces: a vector layer
Buffer
Grows each feature by a fixed distance.
Computed with: sf::st_buffer()
Takes: Input vector layer (vector)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
dist | Distance (map units) | num | 100 |
Produces: a vector layer
Dissolve
Merges features, optionally grouped by a field.
Computed with: sf::st_drop_geometry(), sf::st_sf(), sf::st_union()
Takes: Input vector layer (vector)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
by | Dissolve by field | field |
Produces: a vector layer
Centroids
One point per feature, at its centre.
Computed with: sf::st_centroid()
Takes: Input vector layer (vector)
Produces: a vector layer
Reproject Vector
Reprojects a vector layer into a target CRS.
Computed with: sf::st_transform()
Takes: Input vector layer (vector)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
crs | Target CRS | crs | EPSG:3067 |
Produces: a vector layer
Clip Vector by Polygon
Intersects vector features with a polygon boundary.
Computed with: sf::st_crs(), sf::st_intersection(), sf::st_transform()
Takes: Vector layer to clip (vector), Clipping polygon (vector)
Produces: a vector layer
Bounding Box Polygon
Computes the minimum bounding box polygon around a vector layer.
Computed with: sf::st_as_sfc(), sf::st_bbox()
Takes: Input vector layer (vector)
Produces: a vector layer
Convex Hull
Computes the minimum convex polygon enclosing geometries.
Computed with: sf::st_convex_hull(), sf::st_sf(), sf::st_union()
Takes: Input vector layer (vector)
Produces: a vector layer
Simplify Geometries
Reduces vertex density while preserving general shapes.
Computed with: sf::st_simplify()
Takes: Input vector layer (vector)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
tol | Tolerance distance (map units) | num | 5 |
Produces: a vector layer
Spatial Join
Joins attributes from a second vector layer based on spatial overlap.
Computed with: sf::st_crs(), sf::st_join(), sf::st_transform()
Takes: Target vector layer (vector), Source vector layer (vector)
Produces: a vector layer
Point Density Heatmap
Computes a continuous point density raster grid from points.
Computed with: terra::crs(), terra::ext(), terra::rast(), terra::rasterize(), terra::vect()
Takes: Input vector layer (vector)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
res | Grid Resolution (m) | num | 10 |
Produces: a vector layer
Distance to Vector Features
Computes raster grid of distance to nearest vector geometry.
Computed with: sf::st_transform(), terra::crs(), terra::distance(), terra::vect()
Takes: Input vector layer (vector), Reference raster extent (raster)
Produces: a vector layer
Multidirectional Hillshade
Computes multidirectional hillshade composite.
Computed with: terra::shade(), terra::terrain()
Takes: DEM (input raster) (raster)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
alt | Sun altitude | num | 45 |
Produces: a vector layer
Normalize Point Cloud Heights
Subtracts ground elevation from point cloud Z coordinates.
Computed with: lidR::normalize_height()
Takes: Point cloud (las), Bare-earth DTM (raster)
Produces: a las layer
Geometry Area and Length
Calculates polygon area (m2/ha) or line length.
Computed with: sf::st_area(), sf::st_drop_geometry(), sf::st_length()
Takes: Input vector layer (vector)
Produces: a table layer
Generate Points Along Line
Places equidistant sample points along line geometries.
Computed with: sf::st_line_sample()
Takes: Line vector layer (vector)
Options
| Key | Shown as | Kind | Choices / default |
|---|---|---|---|
dist | Spacing distance (map units) | num | 50 |
Produces: a vector layer
Metrics
Model quality figures are computed the same way on every screen, so a value from one method means the same thing as the value from another and the two can be compared directly. The definitions are below.
| Metric | Meaning |
|---|---|
| RMSE | Root mean squared error — typical size of the prediction error, in the units of the response. Lower is better. |
| R² | Proportion of variance explained. 1 is perfect; 0 is no better than predicting the mean. |
| Bias | Mean signed error. Positive means the model over-predicts on average. |
| RelBias / RRMSE | The same two quantities as a percentage of the mean observed value, so they can be compared between variables measured on different scales. |
Where a method reports cross-validated figures, the folds are produced by the shared helper and the metric is computed on held-out rows, not on the rows used to fit.
Symbology
How map colours are decided. The full user-facing description is in Getting started; this is what happens underneath.
- Categorised — the distinct values of the chosen column are sorted, and one palette colour is assigned per value.
- Graduated — class boundaries are quantiles of the chosen column, so each class holds a similar number of features. Equal-width bands are used only as a fallback, when the values are too tied for quantiles to produce distinct boundaries. Skewed data is the norm for measured attributes, and equal-width bands would put nearly every feature in one class.
- Palettes are perceptually uniform ramps from
viridisLite; viridis, magma, plasma and cividis remain distinguishable under the common forms of colour blindness. - A numeric column is offered for categorised styling only when its values repeat — a column with one distinct value per feature would produce a legend as long as the layer.
About this page
Method names, variable roles, options and the underlying function calls are read directly from the application when this page is built. Assumptions and caveats are written by hand, because they cannot be derived from code.
If something here disagrees with what the app does, the page is wrong and should be rebuilt — that is the point of generating it.
Published methods implemented in the app are listed with their citations on the References screen inside EasyAnalysis. Citing the tool does not replace citing the method — see how to cite.