phibble

Aggregate types

Verification

Scope

Result type of 22 aggregates in a grouped summarise() where every group holds only NA.

References

Reference
dplyr 1.2.1 summarise(), on R 4.6.1
Versions
R 4.6.1, dplyr 1.2.1, jsonlite 2.0.0, PHP 8.5.10

Data

all-NA table
4 rows in 2 groups; NA double, integer, logical, character, and date columns Source

Method

tests/r/expr-types.R records the column type dplyr gives each aggregate. tests/AggregateTypeTest.php runs the same summaries on a DataFrame. Fixtures regenerated with the listed R versions on 2026-11-01; output byte-identical to the committed files.

Check
Comparison with a reference implementation
Recorded
2026-11-02, PHP 8.5.10, macOS 27.0.1 (arm64), commit 1abdeb1

Tolerances

exact equality

Applies to: Result type and values

Type abbreviation (dbl, int, lgl, chr, date), every value NA

x: package value; r: reference value.

Results

22 comparisons: 22 pass, 0 fail, 0 skipped.

Every comparison
Case Quantity Package value Reference value Status
sum_dbl result type dbl dbl pass
sum_int result type int int pass
sum_lgl result type int int pass
mean_dbl result type dbl dbl pass
mean_int result type dbl dbl pass
median_int result type int int pass
sd_int result type dbl dbl pass
var_dbl result type dbl dbl pass
quantile_int result type dbl dbl pass
iqr_int result type dbl dbl pass
min_int result type int int pass
max_dbl result type dbl dbl pass
min_lgl result type int int pass
median_lgl result type lgl lgl pass
first_lgl result type lgl lgl pass
min_chr result type chr chr pass
max_date result type date date pass
first_int result type int int pass
last_chr result type chr chr pass
nth_dbl result type dbl dbl pass
any_lgl result type lgl lgl pass
all_lgl result type lgl lgl pass

Reproduction

From the repository root
Rscript tests/r/expr-types.R
php vendor/bin/pest tests/AggregateTypeTest.php
Raw record
site/verifications/aggregate-types.json
Input data
tests/fixtures/expr/types.json