cached = {
let validColumns;
const csv = await d3.csv(url, (d, idx, columns) => {
if (!validColumns) validColumns = columns.filter(Boolean);
let row = {};
for (const column of validColumns) {
row[column] = d[column];
}
return row;
});
csv.columns = validColumns;
return csv;
}