Title: Calculate Gauge Repeatability and Reproducibility
Version: 0.1.0
Description: Procedures for calculating variance components, study variation, percent study variation, and percent tolerance for gauge repeatability and reproducibility study. Methods included are ANOVA and Average / Range methods. Requires balanced study.
License: GPL (≥ 3)
Encoding: UTF-8
RoxygenNote: 7.3.3
Imports: dplyr
Suggests: knitr, rmarkdown, testthat (≥ 3.0.0), readxl, shiny
VignetteBuilder: knitr
Config/testthat/edition: 3
Depends: R (≥ 3.5)
LazyData: true
NeedsCompilation: no
Packaged: 2025-09-29 10:55:39 UTC; warre
Author: Jonah Warren [aut, cre]
Maintainer: Jonah Warren <warren.jonahb@gmail.com>
Repository: CRAN
Date/Publication: 2025-10-06 06:00:08 UTC

ANOVA Table Calculation

Description

ANOVA Table Calculation

Usage

anova_table(data, part, operator, meas)

Arguments

data

An R dataframe or tibble.

part

A column in data specifying the unique ID of the part being measured

operator

A column in data specifying the operator for the recorded measurement

meas

A column in data where the measurement value is recorded.

Value

An anova table of meas ~ operator x part

Examples

data = data.frame(
SN = c(
'SerialNumber_01',
'SerialNumber_01',
'SerialNumber_02',
'SerialNumber_02',
'SerialNumber_01',
'SerialNumber_01',
'SerialNumber_02',
'SerialNumber_02'),

Operator = c(
'Operator_01',
'Operator_01',
'Operator_01',
'Operator_01',
'Operator_02',
'Operator_02',
'Operator_02',
'Operator_02'),

Measure = c(
0.0172,
0.0177,
0.0155,
0.0159,
0.0174,
0.0181,
0.0152,
0.0176))

anova_table(data, part = 'SN', operator = 'Operator', meas = 'Measure')

ANOVA Variance Component Calculations

Description

ANOVA Variance Component Calculations

Usage

anova_var_calcs(data, part, operator, meas)

Arguments

data

An R dataframe or tibble.

part

A column in data specifying the unique ID of the part being measured

operator

A column in data specifying the operator for the recorded measurement

meas

A column in data where the measurement value is recorded.

Value

A list of numeric values for repeatability, reproducibility, total GRR, part-to-part, and total variance components.

Examples

data = data.frame(
SN = c(
'SerialNumber_01',
'SerialNumber_01',
'SerialNumber_02',
'SerialNumber_02',
'SerialNumber_01',
'SerialNumber_01',
'SerialNumber_02',
'SerialNumber_02'),

Operator = c(
'Operator_01',
'Operator_01',
'Operator_01',
'Operator_01',
'Operator_02',
'Operator_02',
'Operator_02',
'Operator_02'),

Measure = c(
0.0172,
0.0177,
0.0155,
0.0159,
0.0174,
0.0181,
0.0152,
0.0176))

anova_var_calcs(data, part = 'SN', operator = 'Operator', meas = 'Measure')

d2 and c4 Constants for Gage R&R

Description

Functions to calculate the d_2 constant (expected range of a normal subgroup), the chi-square bias correction factor c_4, and a Minitab-style adjusted d_2 that incorporates the number of subgroups.

Usage

d2_integral(m, rel.tol = .Machine$double.eps^0.5)

c4(n)

d2_minitab_df(m, g)

Arguments

m

Integer. Subgroup size (must be \ge 2).

rel.tol

Relative tolerance for integration (passed to integrate()).

n

Integer. Degrees of freedom argument for c4.

g

Integer. Number of subgroups (must be \ge 1).

Details

Value

See Also

integrate, gamma

Examples

# Exact d2 for subgroup size 5
d2_integral(5)

# Chi-square bias correction for df = 8
c4(8)

# Minitab-style adjusted constant for m = 5, g = 2
d2_minitab_df(5, 2)


Measurement System Analysis Data

Description

A collection of sample data to analyze for reproducibility and repeatability measurement error.

Usage

data

Format

data

A data frame with 27 rows and 3 columns:

SN

Serial Number

Operator

Operator or Measurement Technician

Measure

Measured Value

...


Gage R&R Evaluation

Description

Gage R&R Evaluation

Usage

grr_calc(data, part, operator, meas, LSL = NULL, USL = NULL, method = "anova")

Arguments

data

An R dataframe or tibble containing the required identifier and measurement columns.

part

A string giving the column name specifying the unique ID of the part being measured. The column should be a character or factor.

operator

A string giving the column name specifying the operator for the recorded measurement. The column should be a character or factor.

meas

A string giving the column name where the measurement value is recorded. The column must be numeric and contain no missing or infinite values.

LSL

A number specifying the lower specification limit.

USL

A number specifying the upper specification limit.

method

A string specifying "anova" or "xbar_r".

Value

A list containing:

Examples

data <- data.frame(
  SN = rep(c("SerialNumber_01","SerialNumber_02"), each = 4),
  Operator = rep(c("Operator_01","Operator_02"), each = 2, times = 2),
  Measure = c(0.0172,0.0177,0.0155,0.0159,0.0174,0.0181,0.0152,0.0176)
)

grr_calc(data, part = "SN", operator = "Operator",
         meas = "Measure", LSL = 0, USL = 0.040, method = "xbar_r")

Average and Range Method Part-to-Part Variance Calculation

Description

Average and Range Method Part-to-Part Variance Calculation

Usage

part_to_part(data, part, meas)

Arguments

data

An R dataframe or tibble containing the required identifier and measurement columns.

part

Column name (unquoted) specifying the unique ID of the part being measured. The column should be a character or factor vector.

meas

Column name (unquoted) where the measurement value is recorded. The column must be numeric and contain no missing or infinite values.

Value

A number. The measure of part-to-part variation for the given data.

Examples

data <- data.frame(
  SN = rep(c("SerialNumber_01","SerialNumber_02"), each = 4),
  Operator = rep(c("Operator_01","Operator_02"), each = 2, times = 2),
  Measure = c(0.0172,0.0177,0.0155,0.0159,0.0174,0.0181,0.0152,0.0176)
)
part_to_part(data, part = 'SN', meas = 'Measure')

ANOVA Sum of Squares Calculations

Description

ANOVA Sum of Squares Calculations

Usage

ss_calcs(data, part, operator, meas)

Arguments

data

An R dataframe or tibble containing the required identifier and measurement columns.

part

A column in data specifying the unique ID of the part being measured. The column should be a character or factor vector.

operator

A column in data specifying the operator for the recorded measurement. The column should be a character or factor vector.

meas

A column in data where the measurement value is recorded. The column must be numeric and contain no missing or infinite values.

Value

A list of numeric values for the sum of squares error for operator, part, equipment, operator and part interaction, and total error.

Examples

data = data.frame(
SN = c(
'SerialNumber_01',
'SerialNumber_01',
'SerialNumber_02',
'SerialNumber_02',
'SerialNumber_01',
'SerialNumber_01',
'SerialNumber_02',
'SerialNumber_02'),

Operator = c(
'Operator_01',
'Operator_01',
'Operator_01',
'Operator_01',
'Operator_02',
'Operator_02',
'Operator_02',
'Operator_02'),

Measure = c(
0.0172,
0.0177,
0.0155,
0.0159,
0.0174,
0.0181,
0.0152,
0.0176))

ss_calcs(data, part = 'SN', operator = 'Operator', meas = 'Measure')

Average and Range Method Repeatability Calculation

Description

Average and Range Method Repeatability Calculation

Usage

xbar_repeat(data, part, operator, meas)

Arguments

data

An R dataframe or tibble containing the required identifier and measurement columns.

part

Column name (unquoted) specifying the unique ID of the part being measured. The column should be a character or factor vector.

operator

Column name (unquoted) specifying the operator for the recorded measurement. The column should be a character or factor vector.

meas

Column name (unquoted) where the measurement value is recorded. The column must be numeric and contain no missing or infinite values.

Value

A number. The measure of repeatability for the given data.

Examples

data <- data.frame(
  SN = rep(c("SerialNumber_01","SerialNumber_02"), each = 4),
  Operator = rep(c("Operator_01","Operator_02"), each = 2, times = 2),
  Measure = c(0.0172,0.0177,0.0155,0.0159,0.0174,0.0181,0.0152,0.0176)
)
xbar_repeat(data, part = 'SN', operator = 'Operator', meas = 'Measure')

Average and Range Method Reproducibility Calculation

Description

Average and Range Method Reproducibility Calculation

Usage

xbar_reproduce(data, part, operator, meas)

Arguments

data

An R dataframe or tibble containing the required identifier and measurement columns.

part

Column name (unquoted) specifying the unique ID of the part being measured. The column should be a character or factor vector.

operator

Column name (unquoted) specifying the operator for the recorded measurement. The column should be a character or factor vector.

meas

Column name (unquoted) where the measurement value is recorded. The column must be numeric and contain no missing or infinite values.

Value

A number. The measure of reproducibility for the given data.

Examples

data <- data.frame(
  SN = rep(c("SerialNumber_01","SerialNumber_02"), each = 4),
  Operator = rep(c("Operator_01","Operator_02"), each = 2, times = 2),
  Measure = c(0.0172,0.0177,0.0155,0.0159,0.0174,0.0181,0.0152,0.0176)
)
xbar_reproduce(data, part = 'SN', operator = 'Operator', meas = 'Measure')

Average and Range Method Variance Component Summary

Description

Average and Range Method Variance Component Summary

Usage

xbar_varcomps(data, part, operator, meas)

Arguments

data

An R dataframe or tibble.

part

Column name (unquoted) specifying the unique ID of the part being measured.

operator

Column name (unquoted) specifying the operator for the recorded measurement.

meas

Column name (unquoted) where the measurement value is recorded.

Value

A list of numeric values for repeatability, reproducibility, total GRR, part-to-part, and total variance components.

Examples

data <- data.frame(
  SN = rep(c("SerialNumber_01","SerialNumber_02"), each = 4),
  Operator = rep(c("Operator_01","Operator_02"), each = 2, times = 2),
  Measure = c(0.0172,0.0177,0.0155,0.0159,0.0174,0.0181,0.0152,0.0176)
)
xbar_varcomps(data, part = 'SN', operator = 'Operator', meas = 'Measure')