LikertMakeR synthesises Likert-scale and related bounded rating-scale data with predefined means, standard deviations, and (optionally) correlations, Cronbach’s alpha, and factor-loading-based structure.
Purpose
- Reverse-engineer published results when only summary statistics are reported (for re-analysis, visualisation, or teaching).
- Teaching & demos: generate data with known properties without collecting real data.
- Methods work / simulation: explore how reliability, items, bounds, and sample size interact.
For a full introduction and worked examples, see the package website: https://winzarh.github.io/LikertMakeR/
Installation
From CRAN:
install.packages("LikertMakeR")The latest development version is available from the author’s GitHub repository.
Quick Start
- Make a target correlation matrix
library(LikertMakeR)
R <- matrix(
c(
1.00, 0.60, 0.45, 0.40,
0.60, 1.00, 0.75, 0.35,
0.45, 0.75, 1.00, 0.50,
0.40, 0.35, 0.50, 1.00
),
nrow = 4, ncol = 4, byrow = TRUE
)- Generate synthetic rating-scale data with predefined moments
Key functions
lfast(): generate bounded/discrete data with target mean & SDlcor(): rearrange columns to approximate a target correlation matrixmakeCorrAlpha(): generate an item correlation matrix with target Cronbach’s alphamakeScales(): wrapper for lfast() + lcor() to generate a dataframe of correlated columnsmakeCorrLoadings(): build an item correlation matrix from factor loadings and factor correlationsmakeItemsScale(): generate items from a summated scale with target alphamakePaired()/makeRepeated(): reconstruct data from paired t-test / repeated-measures summariesmakeScalesRegression(): generate data from summary of multiple-regression analysiscorrelateScales(): combine multiple item sets so summated scales match a target correlation matrixHelpers:
alpha(),eigenvalues(),reliability()
Rating scale properties
A Likert scale is the mean, or sum, of several ordinal rating scales. They are bipolar (usually “agree-disagree”) responses to propositions that are determined to be moderately-to-highly correlated among each other, and capturing various facets of a theoretical construct.
NOTE
A single 1-5 rating scale is NOT a Likert scale - it may be a Likert-scale item.
Summated rating scales are not continuous or unbounded. For example, a 5-point Likert scale that is constructed with, say, five items (questions) will have a summed range of between 5 (all rated ‘1’) and 25 (all rated ‘5’) with all integers in between, and the mean range will be ‘1’ to ‘5’ with intervals of 1/5=0.20. A 7-point Likert scale constructed from eight items will have a summed range between 8 (all rated ‘1’) and 56 (all rated ‘7’) with all integers in between, and the mean range will be ‘1’ to ‘7’ with intervals of 1/8=0.125.
Learn more
Package website (recommended): https://winzarh.github.io/LikertMakeR/
Vignettes cover:
generating scales from summary statistics,
correlation matrices from alpha or loadings,
repeated-measures and paired designs,
reliability estimation and diagnostics,
validation studies demonstrating function accuracy.
To cite LikertMakeR
BIB:
@software{winzar2025},
title = {LikertMakeR},
author = {Winzar, Hume},
abstract = {LikertMakeR synthesises and correlates rating-scale data with predefined means and standard deviations.},
publisher = {The Comprehensive R Archive Network (CRAN)},
month = dec,
year = {2025},
version = {1.4.0},
origdate = {2022},
url = {https://CRAN.R-project.org/package=LikertMakeR},
note = {R package}
}