Docs: Update benchmark results

This commit is contained in:
github-actions[bot]
2025-11-18 17:37:06 +00:00
parent 39d057f079
commit afcfd09537
84 changed files with 1086 additions and 1088 deletions
@@ -1,19 +1,15 @@
async function processCSV(csv, cfg) {
async function processCSV(csv, { filterColumn:f, filterValue:v, groupBy:g, aggregateColumn:a, operation:o }) {
const [{ default: Papa }, { default: _ }] = await Promise.all([
import('https://cdn.jsdelivr.net/npm/papaparse@5.4.1/+esm'),
import('https://cdn.jsdelivr.net/npm/lodash@4.17.21/+esm')
]);
const filtered = Papa.parse(csv, { header: true, dynamicTyping: true }).data
.filter(r => r[cfg.filterColumn] == cfg.filterValue);
const data = Papa.parse(csv, { header:true, dynamicTyping:true }).data.filter(r => r[f] == v);
return Object.entries(_.groupBy(filtered, cfg.groupBy)).map(([k, v]) => {
const sum = v.reduce((s, r) => s + (Number(r[cfg.aggregateColumn]) || 0), 0);
return {
[cfg.groupBy]: k,
result: cfg.operation === 'count' ? v.length :
cfg.operation === 'avg' ? sum / v.length : sum
};
return Object.entries(_.groupBy(data, g)).map(([k, d]) => {
const n = d.map(r => (x = Number(r[a]), isNaN(x) ? 0 : x));
const s = n.reduce((p, c) => p + c, 0);
return { [g]: k, result: o === 'count' ? d.length : o === 'avg' ? s / n.length : s };
});
}
export default processCSV;