UNPKG

@tidyjs/tidy

Version:

Tidy up your data with JavaScript, inspired by dplyr and the tidyverse

39 lines (36 loc) 1.21 kB
import { mutate } from './mutate.js'; import { summarize, summarizeAll, summarizeIf, summarizeAt } from './summarize.js'; function total(summarizeSpec, mutateSpec) { const _total = (items) => { const summarized = summarize(summarizeSpec)(items); const mutated = mutate(mutateSpec)(summarized); return [...items, ...mutated]; }; return _total; } function totalAll(summaryFn, mutateSpec) { const _totalAll = (items) => { const summarized = summarizeAll(summaryFn)(items); const mutated = mutate(mutateSpec)(summarized); return [...items, ...mutated]; }; return _totalAll; } function totalIf(predicateFn, summaryFn, mutateSpec) { const _totalIf = (items) => { const summarized = summarizeIf(predicateFn, summaryFn)(items); const mutated = mutate(mutateSpec)(summarized); return [...items, ...mutated]; }; return _totalIf; } function totalAt(keys, summaryFn, mutateSpec) { const _totalAt = (items) => { const summarized = summarizeAt(keys, summaryFn)(items); const mutated = mutate(mutateSpec)(summarized); return [...items, ...mutated]; }; return _totalAt; } export { total, totalAll, totalAt, totalIf }; //# sourceMappingURL=total.js.map