gpt4 book ai didi

javascript - 根据值循环遍历 CSV 数据并将其分离到辅助数组中

转载 作者:行者123 更新时间:2023-11-28 20:39:26 26 4
gpt4 key购买 nike

我正在开发一个在线工具,用于在有组织的仪表板界面中显示信息。我从 CSV 电子表格中提取数据,并根据整个 CSV 数据数组中的一个字段将它们分离到另一个多维数组中。

这是我尝试过的:

        // arr is the array that holds the entire CSV data
// inds is where I need the entries separated by industry (arr[i][0])
var indx = 0; // using to add new array to inds array
for(var i = 1; i < arr.length-1; i++){
if(arr[i][0] === arr[i-1][0]) {
if(! inds[indx] ) {
inds[indx] = []
} else {
inds[indx].push(arr[i]);
}
} else {
indx++;
}
}

基本上它的作用是:
如果行业字段与之前的条目相同,则将其放入索引为indx的arr数组中,否则,将 indx 加一为下一个行业。

此解决方案的问题:
它跳过行业的第一个条目,因为前一行是不同的行业,所以 arr[i-1][0]正在检查最后一个行业并跳过下一个行业的第一行。

如何重新格式化此脚本:
我想也许嵌套 for/while,但不确定。我思考逻辑的方式是:
对于 csv 的每一行,虽然行业列相同,但将其放入相应的 inds[index] 。或者,从 arr 中提取与 arr[i][0] 相同的值的行。 .

我确信有一个更简单的解决方案,这就是我来这里的原因,所以我希望我能清楚地表达我的想法,并且我感谢所有反馈。

如果您需要更多说明,请在评论中告诉我。

最佳答案

以下逻辑有效吗?

var indx = -1;
// using to add new array to inds array
for(var i = 1; i < arr.length-1; i++){
if(arr[i][0] !== arr[i-1][0]) {
indx++;
inds[indx] = []
}
inds[indx].push(arr[i]);
}

已更新。

关于javascript - 根据值循环遍历 CSV 数据并将其分离到辅助数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14693168/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com