All Projects → jrnold → resamplr

jrnold / resamplr

Licence: other
R package cross-validation, bootstrap, permutation, and rolling window resampling techniques for the tidyverse.

Programming Languages

r
7636 projects

Projects that are alternatives of or similar to resamplr

mlr3spatiotempcv
Spatiotemporal resampling methods for mlr3
Stars: ✭ 43 (+22.86%)
Mutual labels:  cross-validation, resampling-methods
collateral
Map, find and isolate captured side effects
Stars: ✭ 39 (+11.43%)
Mutual labels:  tidyverse
assignPOP
Population Assignment using Genetic, Non-genetic or Integrated Data in a Machine-learning Framework. Methods in Ecology and Evolution. 2018;9:439–446.
Stars: ✭ 16 (-54.29%)
Mutual labels:  cross-validation
R4Econ
R Code Examples Multi-dimensional/Panel Data
Stars: ✭ 16 (-54.29%)
Mutual labels:  tidyverse
furniture
The furniture R package contains table1 for publication-ready simple and stratified descriptive statistics, tableC for publication-ready correlation matrixes, and other tables #rstats
Stars: ✭ 43 (+22.86%)
Mutual labels:  tidyverse
tidyweek
Repo dedicated to #tidyweek & Mentorship pilot
Stars: ✭ 25 (-28.57%)
Mutual labels:  tidyverse
tidysq
tidy processing of biological sequences in R
Stars: ✭ 29 (-17.14%)
Mutual labels:  tidyverse
timeseries-cv
Time-Series Cross-Validation Module
Stars: ✭ 22 (-37.14%)
Mutual labels:  cross-validation
desctable
An R package to produce descriptive and comparative tables
Stars: ✭ 49 (+40%)
Mutual labels:  tidyverse
advanced-data-wrangling-in-R-legacy
Advanced-data-wrangling-in-R, Workshop
Stars: ✭ 14 (-60%)
Mutual labels:  tidyverse
Machine-learning-toolkits-with-python
Machine learning toolkits with Python
Stars: ✭ 31 (-11.43%)
Mutual labels:  cross-validation
modeltime.resample
Resampling Tools for Time Series Forecasting with Modeltime
Stars: ✭ 12 (-65.71%)
Mutual labels:  cross-validation
osprey
🦅Hyperparameter optimization for machine learning pipelines 🦅
Stars: ✭ 71 (+102.86%)
Mutual labels:  cross-validation
implyr
SQL backend to dplyr for Impala
Stars: ✭ 74 (+111.43%)
Mutual labels:  tidyverse
combinatoricslib
Combinatorial Objects Generators for Java 7+.
Stars: ✭ 83 (+137.14%)
Mutual labels:  permutation
TidyTuesday
📊 Collection of #TidyTuesday Visualisations! 📈
Stars: ✭ 59 (+68.57%)
Mutual labels:  tidyverse
datar
A Grammar of Data Manipulation in python
Stars: ✭ 142 (+305.71%)
Mutual labels:  tidyverse
subsemble
subsemble R package for ensemble learning on subsets of data
Stars: ✭ 40 (+14.29%)
Mutual labels:  cross-validation
Credit
An example project that predicts risk of credit card default using a Logistic Regression classifier and a 30,000 sample dataset.
Stars: ✭ 18 (-48.57%)
Mutual labels:  cross-validation
casewhen
Create reusable dplyr::case_when() functions
Stars: ✭ 64 (+82.86%)
Mutual labels:  tidyverse

resamplr

lifecycle Travis-CI Build Status codecov

Status

I have stopped active development on the resamplr package. I suggest using the rsample package, which implement

I am also working on a lower-level package mlspearer. This package will implement the same resampling, cross-validation, and permutation methods, but work for a wider variety of objects.

Introduction

The resamplr package provides functions that implement resampling methods including the bootstrap, jackknife, random test/train sets, k-fold cross-validation, leave-one-out and leave-p-out cross-validation, time-series cross validation, time-series k-fold cross validation, permutations, rolling windows. These functions generate data frames with resample objects that work with the modelling pipeline of modelr and the tidyverse.

Installation

resamplr is not on CRAN. You can install the development version with

# install.packages("devtools")
devtools::install_github("jrnold/resamplr")

Main Features

The resamplr package includes functions to generate data frames of lazy resample objects, as introduced in the tidyverse modelr package. The resample class stores the a "pointer" to the original dataset and a vector of row indices. The object can be coerced to a dataframe with as.data.frame and the row indices with as.integer.

library("modelr")
library("resamplr")
#> 
#> Attaching package: 'resamplr'
#> The following objects are masked from 'package:modelr':
#> 
#>     bootstrap, crossv_kfold, permute
rs <- resample(mtcars, 1:10)
as.data.frame(rs)
#>                    mpg cyl  disp  hp drat    wt  qsec vs am gear carb
#> Mazda RX4         21.0   6 160.0 110 3.90 2.620 16.46  0  1    4    4
#> Mazda RX4 Wag     21.0   6 160.0 110 3.90 2.875 17.02  0  1    4    4
#> Datsun 710        22.8   4 108.0  93 3.85 2.320 18.61  1  1    4    1
#> Hornet 4 Drive    21.4   6 258.0 110 3.08 3.215 19.44  1  0    3    1
#> Hornet Sportabout 18.7   8 360.0 175 3.15 3.440 17.02  0  0    3    2
#> Valiant           18.1   6 225.0 105 2.76 3.460 20.22  1  0    3    1
#> Duster 360        14.3   8 360.0 245 3.21 3.570 15.84  0  0    3    4
#> Merc 240D         24.4   4 146.7  62 3.69 3.190 20.00  1  0    4    2
#> Merc 230          22.8   4 140.8  95 3.92 3.150 22.90  1  0    4    2
#> Merc 280          19.2   6 167.6 123 3.92 3.440 18.30  1  0    4    4
as.integer(rs)
#>  [1]  1  2  3  4  5  6  7  8  9 10

While the modelr package contains a few functions with resampling methods (crossv_kfold, crossv_mc, and bootstrap), the resamplr package implements many more resampling methods including the following:

  • boostrap

    • bootstrap (weighted, Bayesian): bootstrap
    • balanced bootstrap: balanced_bootstrap
    • time-series bootstrap: tsbootstrap
  • cross-validation

    • test-training pairs: holdout_n, holdout_frac
    • k-fold cross-validation: crossv_kfold
    • time-series cross-validation: crossv_ts
    • leave-one-out and leave-p-out cross-validation: crossv_lpo, crossv_loo
    • time-series k-fold cross-validation: crossv_tskfold
  • jackknife: jackknife

  • permutations: permute

  • rolling windows: roll

All resampling functions are implemented as generic functions with methods for data frames (data.frame) and grouped data frames (grouped_df). When used with grouped data frames, these functions allow either resampling groups instead of rows, or resample rows within each group (stratification), or both, depending on what is appropriate for the method.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].