Docs: Update Gemini benchmark results

This commit is contained in:
github-actions[bot]
2025-11-18 22:04:41 +00:00
parent 31a18dd4ee
commit 33b8150958
220 changed files with 3256 additions and 1491 deletions
@@ -1,18 +1,25 @@
const processCSV = async (csvString, { filterColumn, filterValue, groupBy, aggregateColumn, operation }) => {
const [{ csvParse }, { rollup, sum, mean }] = await Promise.all([
import('https://cdn.jsdelivr.net/npm/d3-dsv@3/+esm'),
import('https://cdn.jsdelivr.net/npm/d3-array@3/+esm')
]);
const [{ default: { parse } }, { rollup, sum, mean }] = await Promise.all([
import('https://esm.sh/papaparse@5.4.1'),
import('https://esm.sh/d3-array@3.2.4')
]);
const getValue = d => +d[aggregateColumn] || 0;
const data = csvParse(csvString).filter(d => d[filterColumn] == filterValue);
const aggregated = rollup(
data,
g => operation === 'count' ? g.length : (operation === 'sum' ? sum : mean)(g, getValue),
d => d[groupBy]
);
const getNum = row => {
const val = parseFloat(row[aggregateColumn]);
return isNaN(val) ? 0 : val;
};
return Array.from(aggregated, ([key, result]) => ({ [groupBy]: key, result }));
const rows = parse(csvString, { header: true, skipEmptyLines: true }).data
.filter(row => row[filterColumn] == filterValue);
const grouped = rollup(
rows,
group => operation === 'count' ? group.length :
operation === 'sum' ? sum(group, getNum) :
mean(group, getNum),
row => row[groupBy]
);
return Array.from(grouped, ([key, result]) => ({ [groupBy]: key, result }));
};
export default processCSV;