Skip to contents

Runs the DataFrame summary-statistics facades over the exact series of an analysis_data() frame (or a plain numeric vector): record length, low-outlier count, min/max, the first four product moments in real space and log10 space, and seven percentiles.

Usage

analysis_data_statistics(data, all_data = FALSE, standardized = FALSE)

Arguments

data

a numeric vector of observations, or a corehydro_data object from analysis_data() (only its exact series is read).

all_data

logical; use SummaryStatisticsAllData (see Details) instead of the default exact-series-only statistics.

standardized

logical; also run SetStandardizedValues() (after computing plotting positions) and return the exact series' standardized values and standardized log10 values, parallel to analysis_data_summary()'s value.

Value

A named list. value holds the twenty summary statistics, named by c("Record Length", "Events Per Index (lambda)", "Low Outliers", "Minimum", "Maximum", "Mean", "Std Dev", "Skewness", "Kurtosis", "Mean (of log)", "Std Dev (of log)", "Skewness (of log)", "Kurtosis (of log)", "1%", "5%", "25%", "50%", "75%", "95%", "99%"). With standardized = TRUE, standardized_value and standardized_log10_value are added: numeric vectors parallel to the exact series, in series order. (The second name's parenthetical is the Greek letter lambda, spelled out here rather than embedded literally so the PDF manual renders; the actual returned name carries the Greek character, matching the C# source.)

Details

By default (all_data = FALSE) the statistics are computed directly from the exact series (SummaryStatisticsExactDataOnly). With all_data = TRUE, they instead come from a nonparametric distribution fit through the Hirsch-Stedinger plotting positions of the combined exact/interval/uncertain record (SummaryStatisticsAllData) – the same fit analysis_data_summary() uses – so "Record Length" counts the full record (censored series included) rather than the exact series alone, and the two methods can disagree even on a frame with no censored data because their percentile and moment estimators differ. Both report NaN for every value when the exact series has fewer than 10 points.

See also

analysis_data_hypothesis_test() for the hypothesis-test facades, analysis_data_summary() for plotting positions and record diagnostics.

Examples

peaks <- c(12500, 15300, 8900, 22100, 18700, 14200, 9800, 28500, 17400, 11600)
s <- analysis_data_statistics(peaks)
s$value[["Mean"]]
#> [1] 15900