Sample dataframes by group, in the form of a 'block bootstrap'. Entire groups are returned allowing for a single 'observation' to span multiple rows of the dataframe.

Blocks units into experimental blocks, with one unit per treatment condition, by creating a measure of multivariate distance between all possible pairs of units. Maximum, minimum, or an allowable range of differences between units on one variable can be set. Randomly assign units to treatment conditions. Diagnose potential interference between units assigned to different treatment conditions.  Write outputs to .tex and .csv files. For more information on the methods implemented, see Moore (2012) <doi:10.1093/pan/mps025>.

Supervised learning on tabular data with blockwise missing
    patterns, using the Blockwise Reduced Modeling (BRM) method of
    Srinivasan, Currim, and Ram (2025) <doi:10.1287/ijds.2022.9016>.
    BRM partitions the training data into overlapping subsets based on
    per-row feature-missing patterns, fits one user-supplied learner per
    subset with minimal imputation, and at prediction time routes each
    test instance to the best-matching subset model. The interface is
    learner-agnostic: any fit-and-predict pair can be plugged in, and
    convenience specifications are provided for linear models, tree
    models, random forests, and gradient boosting.

Implements the Block-wise Rank in Similarity Graph Edge-count 
    test (BRISE), a rank-based two-sample test designed for block-wise 
    missing data. The method constructs (pattern) pair-wise similarity graphs 
    and derives quadratic test statistics with asymptotic chi-square 
    distribution or permutation-based p-values. It provides both 
    vectorized and congregated versions for flexible inference. 
    The methodology is described in Zhang, Liang, Maile, and 
    Zhou (2025) <doi:10.48550/arXiv.2508.17411>.

Functions to combine data on voting blocs' 
    size, turnout, and vote choice to estimate each bloc's
    vote contributions to the Democratic and Republican parties.
    The package also includes functions for uncertainty estimation and
    plotting. Users may define voting blocs along a discrete or continuous variable.
    The package implements methods described in Grimmer, Marble, and Tanigawa-Lau (2023) <doi:10.31235/osf.io/c9fkg>.