У меня есть мой основной JS-файл, в котором я пытаюсь объединить два CSV-файла на основе соответствия состояния и rate_areas. Затем возьмите полученный объект / CSV и сравните с третьим CSV, который я буду выполнять операции.
Я не уверен, как поступить, так как я думаю, что csvtojson заменяет необходимость в файловом потоке, и я не уверен, стоит ли мне хранить результаты в памяти настолько большого размера. В настоящее время я пытаюсь выполнить итерацию по объекту, но у меня возникают проблемы с сохранением объектов результата csvtojson в памяти (из-за отсутствия лучшего решения), чтобы я мог выполнять итерации по ним.
const csv = require('csvtojson');
// const slcspCsv = './slcsp.csv';
const plansCsv = './plans.csv';
const zipsCsv = './zips.csv';
// gives me planscsv & zips csv
const jsonArray = await csv().fromFile(plansCsv)
.then((jsonObj) => {
for(var key in jsonObj){
var planState = jsonObj[key].state;
var planRateArea = jsonObj[key].rate_area;
console.log(planRateArea, planState);
}
})
plan.csv пример 50 000 строк
plan_id,state,metal_level,rate,rate_area
74449NR9870320,GA,Silver,298.62,7
26325VH2723968,FL,Silver,421.43,60
09846WB8636633,IL,Gold,361.69,5
zips.csv 21 000 строк
zipcode,state,county_code,name,rate_area
36749,AL,01001,Autauga,11
36703,AL,01001,Autauga,11
30757,GA,13083,Dade,7
30750,GA,13083,Dade,7
Поэтому я пытаюсь взять почтовый индекс из zips.csv и вставить его вplan.csv на основе соответствующего состояния и кода_области, который я затем сопоставлю с почтовыми индексами из slcsp.csv и найду второй план серебра с наименьшей стоимостью .