Skip to content
Nuée
Français Download

nuée /nɥe/ noun, feminine · French

Nuée

  1. A swarm; a flock so dense it moves as one. Starlings at dusk, midges over a pond, points on a plot.
  2. Free software that turns clouds of points into models you can read: PCA, PLS, mixed models, community ecology, monitoring and maps, every calculation in plain R.

The latest version · free software, GPL-3.0 · no account, no licence key

Fig. 1 The example project’s 120 apples, on the wing. Your pointer is the falcon.

§ 1The application

Point, click, keep the R.

Open a table from Excel, R, SPSS, Stata, SAS, jamovi or QGIS, a field survey from KoboToolbox or ODK, or paste cells from any spreadsheet. Pick your variables. Nuée fits the model and gives you its scores, loadings, diagnostics and validation, in plots you can zoom, select and colour.

Then it hands everything back: the data and the results to any of those programs, the paragraph for your Methods section, and an R script that refits the model without Nuée.

  • Select points with a box or a lasso: the selection follows you in every plot of the model.
  • Ctrl+K finds any command from a part of its name.
  • A recovery copy every two minutes, and undo for data changes.
Nuée’s window: the project explorer on the left, the summary of a PLS model, its scores plot and its loadings drawn as lines against the wavelength.
Fig. 2 A PLS on near-infrared spectra, from the second tutorial: the explorer, the model’s summary, its scores, and its loadings drawn against the wavelength.

§ 2What it does

One swarm, six shapes.

Every dot below is a row of data, placed by Nuée’s own engine. Scroll, and the swarm settles into each family of analyses in turn.

  1. 01Multivariate

    Scores, loadings, and why that point strays.

    PCA, PLS, PLS-DA, OPLS and OPLS-DA by NIPALS, missing values included. A cross-validation that refits the model without each group in turn, permutation tests, CV-ANOVA, VIP with a cut-off placed for you, and contribution plots that say why an observation stands out.

    Fig. 3 The example’s PCA: 120 apples, 14 measurements, four varieties. The first axis carries 35% of the variance, the second 26%. Dashed: Hotelling’s T², 95%. GalaGoldenGrannyReinette

    The guide

  2. 02Spectra

    Spectra, read as spectra.

    JCAMP-DX, SPC or text files in; SNV, MSC, detrending and Savitzky–Golay smoothing or derivatives before the model. Loadings, coefficients and VIP are drawn as lines against the wavelength: drag across a band to leave it out, and iPLS shows which ranges predict best.

    Fig. 4 Six of the tutorial’s 120 near-infrared soil spectra, 141 wavelengths each, from the poorest in carbon to the richest. Shaded: the two water bands. grasslandcropland

    The tutorialThe guide

  3. 03Regressions

    Mixed, generalized, additive. And explained.

    Linear and mixed models with nested random effects, random slopes and an autocorrelation in time; GLMs and GAMs for counts, presences, proportions and densities with zeros. Adjusted means, AIC selection, and the model’s conditions checked and said in words.

    Fig. 5 The first tutorial’s before-after with controls: young trout at three stations upstream of a weir and three controls. The gap between them goes from 3.2 before the weir is removed to 10.3 after; the mixed model puts the effect at +6.9 per 100 m² [3.5, 10.4]. controlsrestored

    The tutorialThe guide

  4. 04Communities

    Many species at once.

    RDA, CA and CCA with their permutation tests; PCoA and NMDS on Bray–Curtis, Jaccard, Gower and six other distances; PERMANOVA with the dispersion of each group, Mantel tests, indicator species, rarefaction and richness estimators. The same p-values as vegan for the same permutations.

    Fig. 6 An NMDS of 72 made-up surveys of 30 species in three habitats, on Bray–Curtis distances. Stress 0.065. reedbedmeadowwoodland

    The guide

  5. 05Monitoring

    Counts become trends and densities.

    TRIM indices, the standard of European bird monitoring, with missing counts, overdispersion and serial correlation. Distance sampling from lines or points. Before-after designs with controls, Mann–Kendall trends with Sen’s slopes, and the power to detect a trend before the fieldwork starts.

    Fig. 7 Each dot is a detection, one or two skylarks seen from a transect line, in the third tutorial: 157 of them, fewer and fewer with distance. The curve is the half-normal detection function: 58% of the skylarks within 150 m are detected, hence 23.2 per km² [17.9, 30.0].

    The tutorialThe guide

  6. 06Maps

    Where it happens.

    Coordinates in WGS 84, Lambert-93, UTM and others; sites on a map, coloured by a variable or by a model’s residuals; GeoPackage in and out for QGIS; a raster’s elevation, land cover or climate added at each site; Moran’s I, variograms and a spatial smooth for what the model leaves in space.

    Fig. 8 46 made-up sites on the contour lines of a made-up relief, coloured by the quarter their value falls in. A background map is fetched only if you choose one. lowest quarterhighest quarter

    The guide

And also: decision trees, random forests and boosted trees; linear discriminant analysis and k-means; class models and the Coomans plot; statistical tests chosen from the variables’ types, their conditions checked; predictions for new observations, those outside the model’s domain flagged.

§ 3Guidance

Not sure which analysis? Ask.

Model › Which analysis? asks your question in plain words, reads what your columns hold, and recommends an analysis with its conditions; a click then opens the right window, already filled in. Below is the application’s own table of rules, running on this page.

And once the model is fitted, its Summary says each condition in words (the residuals’ normality, a spread that changes, influential observations, overdispersion, collinear terms) with what to do about it.

§ 4Open by design

R, all the way down.

No statistic is computed anywhere else. The engine is 34,111 lines of commented R in 64 files, checked by 34 scripts at every change. You can read what was computed. You can change it.

R consolem = M1 (PCA) · p = orchards
> head(round(m$statistiques$observations[, c("t1", "t2", "T2", "DModX")], 2))
     t1    t2   T2 DModX
1 -2.30 -0.93 6.04  1.23
2 -2.22  0.00 4.65  0.63
3 -1.63 -0.75 3.30  1.14
4 -2.77  0.76 4.07  1.17
5 -2.57 -0.27 3.93  0.53
6 -2.26  0.71 3.62  0.45
The R console (Ctrl+J) shows the R behind each action, and runs your own in the application’s session: m and p stand for the model and the project on screen.

Fix it yourself. Edit a file of the engine, type recharger_moteur() in the console, and refit.

orchards M2.Rlines 23 to 44 of 342
1# Model M2 (Taste score): PLS, 7 components, 120 observations, 14 X terms2# R script written by Nuée 1.0.0 on 2026-11-15, from the project “orchards.csv”.3# It redoes this model with R alone, without Nuée or any package: the computation is written for this4# model, from its data to its results, which are those of Nuée. Its four parts:5#   1. Functions: the NIPALS algorithm, the cross-validation6#   2. Data7#   3. Model: X and Y terms, scaling, fit, statistics8#   4. Results: tables and plots⋮23# One PLS component by NIPALS, from the residuals E of X and F of Y: the weights w of the X terms24# (of norm 1), the scores t, the weights c of the Y terms and the loadings p, computed until the Y25# scores u no longer change (relative change 1e-10, 2000 rounds at most). Missing values are26# ignored (ME, MF).27pls_component <- function(E, ME, F, MF) {28  Et <- t(E)29  MEt <- t(ME)30  Ft <- t(F)31  MFt <- t(MF)32  u <- F[, which.max(colSums(F^2))]33  for (i in 1:2000) {34    w <- project(Et, MEt, u)35    w <- w / sqrt(sum(w^2))36    tt <- project(E, ME, w)37    cc <- project(Ft, MFt, tt)38    u_next <- project(F, MF, cc)39    done <- sqrt(sum((u_next - u)^2)) <= 1e-10 * sqrt(sum(u_next^2))40    u <- u_next41    if (done) break42  }43  list(w = w, t = tt, c = cc, p = project(Et, MEt, tt))44}
Export to R turns any model into a script, or an R Markdown or Quarto report, that refits it with R alone. This one is the example’s PLS: 342 commented lines, of which the heart is shown. Before writing the file, Nuée runs the script and checks that it gives the same results.

§ 5From the model to the paper

It drafts your Methods.

Model › Text for the Methods section writes the paragraph from the model itself, in English or in French, with its references. Read it over, complete it with what the model can’t know, and paste.

Statistical analysis

The model uses 120 observations and 14 X variables. The Y variable: “taste_score”.

The X variables were mean-centred and scaled to unit variance.

We fitted a PLS regression (partial least squares; Wold et al., 2001) with the NIPALS algorithm, which handles missing values (0.8% of the X values; Nelson et al., 1996), with 7 components. Cross-validation used 7 groups (observation i in group i modulo 7); each group was predicted by a model fitted without it, with centring recomputed on the other observations and the scaling of the full model.

The model explains 90% of the variance of X (cumulative R²X) and 86% of that of Y (cumulative R²Y); its cross-validated predictive ability is Q² = 0.81. The empty model, which predicts each held-out group by the mean of Y over the other observations, has Q² = -0.01; the model's gain over it, (Q² − Q² empty) / (1 − Q² empty), is 0.81. CV-ANOVA (Eriksson et al., 2008): F = 31.24, p < 0.001.

Computations were done with Nuée 1.0.0 (4rtefakt, 2026), whose engine is written in R (R 4.6.2; R Core Team, 2026).

References

  • 4rtefakt (2026). Nuée (version 1.0.0) [Computer software]. https://github.com/4rtefakt/nuee
  • Eriksson, L., Trygg, J., & Wold, S. (2008). CV-ANOVA for significance testing of PLS and OPLS models. Journal of Chemometrics, 22(11–12), 594–600. https://doi.org/10.1002/cem.1187
  • Nelson, P. R. C., Taylor, P. A., & MacGregor, J. F. (1996). Missing data methods in PCA and PLS: Score calculations with incomplete observations. Chemometrics and Intelligent Laboratory Systems, 35(1), 45–65. https://doi.org/10.1016/S0169-7439(96)00007-X
  • R Core Team (2026). R: A language and environment for statistical computing. R Foundation for Statistical Computing, Vienna, Austria. https://www.R-project.org/
  • Wold, S., Sjöström, M., & Eriksson, L. (2001). PLS-regression: a basic tool of chemometrics. Chemometrics and Intelligent Laboratory Systems, 58(2), 109–130. https://doi.org/10.1016/S0169-7439(01)00155-1
Fig. 9 The Methods text of the example’s PLS, as Nuée writes it. Every underlined number comes from the model.

Documents that can’t go stale

An article or a report in Markdown, kept in the project beside its live preview. It cites the project’s results and the literature, from BibTeX files or from Zotero, and compiles to Word, PDF, HTML or Quarto. Refit the model: the numbers follow.

you writeThe model predicted the tasting score of {{M2.N}} apples with a cross-validated Q² of {{M2.Q2}}, and explained {{M2.R2Y:%}} of its variance [@wold2001].

your readers getThe model predicted the tasting score of 120 apples with a cross-validated Q² of 0.81, and explained 86% of its variance (Wold et al., 2001).

Figures at a journal’s width

Several plots composed as A, B, C panels, at one or two columns, exported as vector PDF or SVG, or as PNG and TIFF at 300 or 600 dpi.

The figure composer: two panels, A and B, at 174 mm, with the export formats PDF, SVG, PNG and TIFF.

§ 6Files

Opens what you have, returns what you need.

Value labels become categories; separators, decimal commas and encodings are detected; GPS points become the project’s coordinates. The exported files were opened in jamovi, PSPP, Weka, LibreOffice and pandas, to make sure.

opens

  • .xlsxExcel
  • .xlsExcel
  • .csv
  • .tsv
  • .rdsR
  • .RDataR
  • .savSPSS
  • .porSPSS
  • .dtaStata
  • .sas7bdatSAS
  • .xptSAS
  • .omvjamovi
  • .gpkgQGIS
  • .tifGeoTIFF
  • .ascESRI
  • .jdxJCAMP-DX
  • .spcGalactic, Thermo
  • .dbfdBase
  • .arffWeka
  • .bibBibTeX
  • KoboToolbox
  • ODK Central
  • Zotero
  • Ctrl+V

writes

  • .xlsxExcel
  • .csv
  • .rdsR
  • .RDataR
  • .savSPSS
  • .dtaStata
  • .xptSAS
  • .omvjamovi
  • .gpkgQGIS
  • .dbfdBase
  • .arffWeka
  • .R
  • .RmdR Markdown
  • .qmdQuarto
  • renv.lock
  • .docxWord
  • .pdf
  • .html
  • .svg
  • .png
  • .tiff600 dpi
  • .nuee

§ 7Checked

The numbers of the packages you would cite.

Nuée doesn’t ask to be believed. Its results are compared with the reference implementations at every change, in the open, where anyone can watch the checks run.

vegan · indicspeciesOrdinations, PERMANOVA, Mantel tests, indicator speciesthe same p-values for the same permutations
nlme · mgcv · emmeansMixed, generalized and additive modelsfitted by the packages themselves; adjusted means as emmeans gives them
rtrimIndices and trends of countsyearly indices, standard errors and trend classes
DistanceDensities from line and point transectsdetection functions, densities and their intervals
terra · PROJ · spdep · gstatRasters, coordinates, spatial autocorrelationconversions equal to PROJ’s to the micrometre
ranger · gbmRandom forests and boosted treeserrors, importances and partial dependence
.usp files944 models from 133 .usp projects, recomputedR²X, R²Y, scores, loadings, T², DModX, VIP and coefficients match the stored values, a few models with missing data aside

Where Nuée differs on purpose, it says so: Help › Results and known differences. Watch the checks run

Your data stay on your computer.

Nuée sends nothing: no account, no licence key, no usage statistics. Two exceptions, both yours to refuse: a question to GitHub at start-up about a newer version, and the area on screen to OpenStreetMap or IGN when you choose a background map.

§ 8Download

Take it home.

Windows 10 and 11

The installer brings R with it: there is nothing else to install, and no administrator rights are needed.

Download for Windows

Windows may say it protected your PC, because the installer isn’t signed: More info, then Run anyway.

Debian, Ubuntu and their derivatives

The .deb brings R and the packages Nuée needs through apt.

Download the .deb

Other distributions: the AppImage or the tar.gz, with your distribution’s R.

Then try Help › Example project: the 120 apples of this page, with four models ready.

To cite Nuée, let Model › Text for the Methods section do it for you, or: 4rtefakt (2026). Nuée [Computer software]. https://github.com/4rtefakt/nuee