Nothing
-Wdeprecated-declarations warning reported by CRAN's macOS/M1mac additional check (Apple clang 21, macOS 26 SDK). The newer libc++ deprecates std::char_traits<unsigned char>, which the vendored nlohmann/json instantiates through its binary output/stream adapters (std::basic_string<std::uint8_t> / std::basic_ostream<std::uint8_t>). ppforest2 does not use nlohmann's binary formats, so the vendored json.hpp is now bracketed with a _Pragma guard that suppresses the deprecation. _Pragma (unlike #pragma) is not flagged by R CMD check's pragma check. The guard is applied by make r-vendor-deps (scripts/vendor-guard-json.sh).Makevars instead of CMake, with no network access or downloaded dependencies at install time. Eigen is provided by RcppEigen; nlohmann/json and pcg headers are vendored under inst/include. This makes the package installable on CRAN's offline build machines. (fmt and csv-parser, used only by the CLI, are no longer part of the R build.)EIGEN_NO_AUTOMATIC_RESIZING on all platforms and EIGEN_DONT_VECTORIZE on Windows.stats/GroupPartition and stats/Simulation so the code compiles warning-free under a strict C++17 GCC (-Wall -Wextra -pedantic).EIGEN_VERSION_AT_LEAST(3, 4, 0) guard fails the build with a clear message if an incompatible Eigen is supplied (e.g. via RcppEigen).make r-vendor-deps re-vendors the committed json/pcg headers after a version bump in core/Dependencies.cmake.DESCRIPTION uses Authors@R and cites the projection-pursuit tree and forest references with DOIs.\donttest with requireNamespace() guards instead of \dontrun, so they run under --run-donttest when the suggested packages are available.cran-comments.md. The package passes R CMD check --as-cran with no errors or warnings; remaining notes (new submission, cosmetic pragmas in the vendored nlohmann/json headers) are documented for the reviewer.oob_error is NA_real_ (R) / "not available" (CLI) when no observation has any out-of-bag tree.null-or-value representation so downstream tooling can distinguish "computed but empty" from other shapes without special-casing.pptr() and pprf() with formula and matrix interfaces. Returned models carry an S3 class vector identifying both model type and mode (e.g. c("pprf_classification", "pprf", "ppmodel")).predict() returns group labels (type = "class") or vote proportions (type = "prob") for classification.summary() displays training and OOB confusion matrices.oob_error(), oob_predictions(), oob_samples(), bag_samples(), permuted_importance(), weighted_importance() — compute from the training data stored on the model on first access and memoize in an environment cache, so training is fast and repeated access is free. oob_predictions() returns a factor with NA for rows with no OOB tree.save_json() and load_json() for model persistence.pp_tree() and pp_rand_forest() model specifications.datasets::iris from base R for iris examples.)train fits a tree or forest from CSV and saves as JSON.predict applies a saved model to new data.evaluate runs train/test evaluation with smart convergence.summarize displays model configuration, data summary, and metrics from a saved model JSON. --data recomputes metrics from training data.benchmark runs multi-scenario performance benchmarks with baseline comparison.serve exposes a saved model over HTTP — GET / returns the model summary as JSON (or an HTML dashboard for browsers showing configuration, training metrics, and variable importance), GET /health is a liveness probe, and POST /predict accepts a feature CSV and returns predictions (JSON for API clients, an HTML predictions page for browsers, with a Download CSV button and confusion matrix when the request CSV includes a response column). Results are cached in-memory with shareable ?id=… URLs; the dashboard binds to 127.0.0.1:8080 by default.Regression support is included but untested in production workloads. API surface and defaults may change in future releases.
ByCutpoint grouping strategy that quantile-slices the continuous response, a MeanResponse leaf, and MinSize / MinVariance / CompositeStop (stop::any) stop rules.y is numeric (not a factor). predict() returns a numeric vector (type = "response").grouping_by_cutpoint(), leaf_mean_response(), stop_min_size(), stop_min_variance(), stop_any().summary() displays MSE / MAE / R² for regression models. oob_predictions() returns a numeric vector with NA_real_ for rows with no OOB tree.save_json() / load_json() preserve regression mode; parsnip pp_tree() / pp_rand_forest() accept mode = "regression".--mode classification|regression selects the training mode; regression reads the last CSV column as the continuous response. predict returns numeric predictions and MSE/MAE/R²; evaluate reports MSE for regression.california_housing (20,433 × 9, predict median_house_value). For smaller regression examples use datasets::mtcars from base R.Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.