StatRank: Statistical Rank Aggregation: Inference, Evaluation, and Visualization

A set of methods to implement Generalized Method of Moments and Maximal Likelihood methods for Random Utility Models. These methods are meant to provide inference on rank comparison data. These methods accept full, partial, and pairwise rankings, and provides methods to break down full or partial rankings into their pairwise components. Please see Generalized Method-of-Moments for Rank Aggregation from NIPS 2013 for a description of some of our methods.

Install the latest version of this package by entering the following in R:
AuthorHossein Azari Soufiani, William Chen
Date of publication2015-09-09 09:34:43
MaintainerHossein Azari Soufiani <>
LicenseGPL (>= 2)

View on CRAN

Man pages

Breaking: Breaks full or partial orderings into pairwise comparisons Helper function for the graphing interface

Data.Election1: A1 Election Data

Data.Election6: A6 Election Data

Data.Election9: A9 Election Data

Data.Nascar: Nascar Data

Data.NascarTrimmed: Trimmed Nascar Data

Data.Test: Tiny test dataset

Estimation.GRUM.MLE: Performs parameter estimation for a Generalized Random...

Estimation.Normal.GMM: GMM Method for Estimating Random Utility Model wih Normal...

Estimation.PL.GMM: GMM Method for estimating Plackett-Luce model parameters

Estimation.PL.MLE: Performs parameter estimation for the Plackett-Luce model...

Estimation.RUM.MLE: Performs parameter estimation for a Random Utility Model with...

Estimation.RUM.MultiType.MLE: Performs parameter estimation for a Multitype Random Utility...

Estimation.RUM.Nonparametric: Nonparametric RUM Estimator

Estimation.Zemel.MLE: Estimates Zemel Parameters via Gradient Descent

Evaluation.AveragePrecision: Calculates the Average Precision

Evaluation.KendallTau: Calculates the Kendall Tau correlation between two ranks

Evaluation.KL: Calculates KL divergence between empirical pairwise...

Evaluation.LocationofWinner: Calculates the location of the True winner in the estimated...

Evaluation.MSE: Calculates MSE between empirical pairwise preferences and...

Evaluation.NDCG: Calculates the Normalized Discounted Cumluative Gain Calculates the Average Precision at k

Evaluation.TVD: Calculates TVD between empirical pairwise preferences and...

Expo.MultiType.Pairwise.Prob: Pairwise Probability for PL Multitype Model

generateC: Generate a matrix of pairwise wins

generateC.model: Turns inference object into modeled C matrix.

generateC.model.Nonparametric: Generate pairwise matrix for an NPRUM model

Generate.NPRUM.Data: Generate data from an NPRUM model

Generate.RUM.Data: Generate observation of ranks given parameters

Generate.RUM.Parameters: Parameter Generation for a RUM model

Generate.Zemel.Parameters: Generates possible scores for a Zemel model

Generate.Zemel.Ranks.Pairs: Generates pairwise ranks from a Zemel model given a set of...

KL: Calculates KL Divergence between non-diagonal entries of two...

Likelihood.Nonparametric: Calculate Likelihood for the nonparametric model

Likelihood.PL: A faster Likelihood for Plackett-Luce Model

Likelihood.RUM: Likelihood for general Random Utility Models

Likelihood.RUM.Multitype: Likelihood for Multitype Random Utility Models

Likelihood.Zemel: Gives Zemel pairwise Log-likelihood with data and scores

MSE: Calculates MSE between non-diagonal entries of two matrices...

Normal.MultiType.Pairwise.Prob: Pairwise Probability for Normal Multitype Model

Normal.Pairwise.Prob: Pairwise Probability for Normal Model

PL.Pairwise.Prob: Pairwise Probability for PL Model Converts scores to a ranking

scramble: Scramble a vector

turn_matrix_into_table: Converts a matrix into a table

TVD: Calculates TVD between two matrices

Visualization.Empirical: RPD Visualization

Visualization.MultiType: Multitype Random Utility visualizer

Visualization.Pairwise.Probabilities: Creates pairwise matrices to compare inference results with...

Visualization.RUMplots: RUMplot visualization

Zemel.Pairwise.Prob: Pairwise Probability for Zemel


Breaking Man page Man page
Data.Election1 Man page
Data.Election6 Man page
Data.Election9 Man page
Data.Nascar Man page
Data.NascarTrimmed Man page
Data.Test Man page
Estimation.GRUM.MLE Man page
Estimation.Normal.GMM Man page
Estimation.PL.GMM Man page
Estimation.PL.MLE Man page
Estimation.RUM.MLE Man page
Estimation.RUM.MultiType.MLE Man page
Estimation.RUM.Nonparametric Man page
Estimation.Zemel.MLE Man page
Evaluation.AveragePrecision Man page
Evaluation.KendallTau Man page
Evaluation.KL Man page
Evaluation.LocationofWinner Man page
Evaluation.MSE Man page
Evaluation.NDCG Man page Man page
Evaluation.TVD Man page
Expo.MultiType.Pairwise.Prob Man page
generateC Man page
generateC.model Man page
generateC.model.Nonparametric Man page
Generate.NPRUM.Data Man page
Generate.RUM.Data Man page
Generate.RUM.Parameters Man page
Generate.Zemel.Parameters Man page
Generate.Zemel.Ranks.Pairs Man page
KL Man page
Likelihood.Nonparametric Man page
Likelihood.PL Man page
Likelihood.RUM Man page
Likelihood.RUM.Multitype Man page
Likelihood.Zemel Man page
MSE Man page
Normal.MultiType.Pairwise.Prob Man page
Normal.Pairwise.Prob Man page
PL.Pairwise.Prob Man page Man page
scramble Man page
turn_matrix_into_table Man page
TVD Man page
Visualization.Empirical Man page
Visualization.MultiType Man page
Visualization.Pairwise.Probabilities Man page
Visualization.RUMplots Man page
Zemel.Pairwise.Prob Man page


R/slice_sampler.R R/election1-data.R R/NascarTrimmed-data.R R/Visualization.R R/test-data.R R/election6-data.R R/Metafunctions.R R/Nascar-data.R R/election9-data.R R/Helpers.R R/RandomUtilityModels.R R/Zemel.R R/Nonparametric.R R/Evaluation.R
man/ man/MSE.Rd man/Estimation.Normal.GMM.Rd man/Data.Test.Rd man/ man/Likelihood.RUM.Rd man/Estimation.PL.MLE.Rd man/Generate.RUM.Data.Rd man/Generate.Zemel.Ranks.Pairs.Rd man/Visualization.RUMplots.Rd man/Breaking.Rd man/Evaluation.LocationofWinner.Rd man/Estimation.Zemel.MLE.Rd man/Likelihood.PL.Rd man/Evaluation.KL.Rd man/Normal.MultiType.Pairwise.Prob.Rd man/Likelihood.Zemel.Rd man/Estimation.GRUM.MLE.Rd man/Estimation.RUM.MultiType.MLE.Rd man/Data.Nascar.Rd man/Generate.NPRUM.Data.Rd man/Estimation.RUM.Nonparametric.Rd man/Evaluation.MSE.Rd man/generateC.model.Rd man/Evaluation.AveragePrecision.Rd man/Estimation.PL.GMM.Rd man/Data.NascarTrimmed.Rd man/Visualization.Pairwise.Probabilities.Rd man/Normal.Pairwise.Prob.Rd man/Estimation.RUM.MLE.Rd man/Zemel.Pairwise.Prob.Rd man/PL.Pairwise.Prob.Rd man/Visualization.MultiType.Rd man/Likelihood.RUM.Multitype.Rd man/generateC.Rd man/Expo.MultiType.Pairwise.Prob.Rd man/Generate.Zemel.Parameters.Rd man/scramble.Rd man/Generate.RUM.Parameters.Rd man/turn_matrix_into_table.Rd man/generateC.model.Nonparametric.Rd man/TVD.Rd man/KL.Rd man/ man/Evaluation.TVD.Rd man/Data.Election1.Rd man/Evaluation.NDCG.Rd man/Data.Election6.Rd man/Evaluation.KendallTau.Rd man/Visualization.Empirical.Rd man/Likelihood.Nonparametric.Rd man/Data.Election9.Rd

Questions? Problems? Suggestions? or email at

Please suggest features or report bugs with the GitHub issue tracker.

All documentation is copyright its authors; we didn't write any of that.