Changelog
Source:NEWS.md
weird (development version)
-
kde_bandwidth(method = "lookout")no longer crashes R when the data contain points that differ only by floating-point error (e.g. PCA scores of identical observations);mlpack::emst()could overflow the C stack on such near-duplicates. -
lof_scores()andglosh_scores()now useknearest neighbours excluding the observation itself. Previously the observation itself was also included. -
lof_scores()no longer replaces infinite values by 1.
weird 3.1.0
CRAN release: 2026-09-07
-
dist_kde()HDR calculations now always use the density at the data points (previously this required at least 200 observations), followinghdrcde. -
dist_density()removed in favour ofdistributional::dist_density(). -
gg_density()now labels the axis with the variable name when plotting adist_kdeobject, if available. -
hdr_regions()added, showing which highest density region each observation falls in, for one or more coverage probabilities, from a univariate or bivariatedist_kdeobject. -
kde_bandwidth()gainsmethod = "scv", a smoothed cross-validation bandwidth estimator usingks::hscv()/ks::Hscv(). -
hampel_anomalies()gainsalphaandapproximationarguments, allowing anomalies to be declared using a significance level rather than a fixed number of standard deviations.
weird 3.0.0
CRAN release: 2026-07-06
- Moved the Old Faithful Geyser examples from the README into a new vignette,
vignette("old-faithful"). -
augment()method added for rrcovPca*objects, returning the principal component scores, score distances and orthogonal distances, optionally alongside the original data. -
dist_mclust()added to convert a Gaussian mixture model (Mclustobject) to a distributional object. -
density_df()added, converting a distributional object to a data frame containing density values over a grid, suitable for plotting. -
biplot_projection()added, drawing a two-dimensional projection of scores with the original variable axes overlaid as arrows. -
outlier_map()added, drawing the score distance against the orthogonal distance for aprcompor rrcovPca*object, with optional cutoff thresholds classifying observations as regular, good leverage points, orthogonal outliers or bad leverage points. - Added
fetch_air_quality()to download Beijing air quality data from 12 monitoring stations (2013-2017). - Added
gun_deathsdataset containing firearm homicide rates and gun ownership by country for 2017. -
wine_reviewscolumns have been reordered. -
gg_density_layer()removed, -
lof_scores()now returns 1 (instead of 0) when there are too many duplicates. -
mvscale()now better handles missing and infinite values, and returns centering and scaling terms as attributes. -
dist_kde()is now robust to missing values. - Removed several dependencies
- Bug fixes and documentation improvements
weird 2.1.0
CRAN release: 2026-05-05
- Added
surprisals()andsurprisals_prob()forglmobjects - Faster calculation of
surprisals_prob()forlmandgamobjects - More accurate rank-based surprisal calculation when ties and missings present
- More accurate HDR calculations
- Added covariance calculation for multivariate
dist_kdeobjects - Added
distributional::hdr()anddistributional::parameters()methods fordist_kdeobjects - Faster calculation for
kde_bandwidth()withmethod = "lookout", now using mlpack for merge distances -
mvscale()re-added to weird - Dropped lookout package dependency
- Added lots of unit tests
- Better docs
- Bug fixes
weird 2.0.0
CRAN release: 2026-01-27
- Added
fr_mortalitydata set - Updated
oldfaithfulandcricket_battingdata sets - Refactored package to use distributional objects
- Added
dist_kde()anddist_density() - Removed
as_kde()andautoplot.kde() - Rewrote
kde_bandwidth()to handle more methods - Added
gg_density()andgg_density_layer() - Replaced
density_scores()withsurprisals()and addedsurprisals_prob() - Updated
gg_bagplot()andgg_hdrboxplot()to useshow_pointsargument - Removed
lookout() - Added
hampel_anomalies() -
mvscale()moved to lookout package - Dropped
interpolationdependency - No longer exporting
weird_packages()andweird_conflicts()
weird 1.0.2
CRAN release: 2024-01-24
- Removed
wine_reviewsdataset and createdfetch_wine_reviews()function. - Bug fixes.