gpt4 book ai didi

javascript - 如何使用Javascript从csv文件中查找每列的数据类型?

转载 作者:行者123 更新时间:2023-12-03 10:34:18 26 4
gpt4 key购买 nike

我尝试使用Java脚本查找每列的数据类型,它打印数字、字符串和日期的字符串数据类型。

我需要每一列的数据类型,无论是日期、字符串、数字还是 float 。

如果没有 CSV,它会打印正确的数据类型。

没有 CSV 文件的工作示例

var num=15;
var str="xyz";
console.log(typeof num);
console.log(typeof str);

Output
number
string

但是使用 csv 文件它会打印所有列的字符串。

我的 CSV 文件是:

01/01/1991,12,xyz,14.4
01/01/1992,20,abc,20.5
01/02/1980,78,xy,60.8

我正在使用 Papa Parse javascript 插件来获取每一列,然后检查数据类型。

如何从 CSV 文件中获取每列的数据类型?有没有其他方法可以将 CSV 解析为数组,以便我们可以遍历特定的行或列?

最佳答案

当您在 JavaScript 变量中加载 CSV 时,该变量是一个字符串。

您必须将 csv 提取到 JSON 数组中,并且必须相应地转换每个变量。

代码:

  $.ajax({
type: "GET",
url: "sample.csv",
success: function (data) { loadData(data); }
});

/*var data = 'date,name,value\n\
01/01/1991,xyz,14.4\n\
01/01/1992,abc,20.5\n\
01/02/1980,xy,60.8';
loadData(data);*/

function loadData(data1){
console.log(data1);
var dataPoints = data1.split(/\r\n|\n/);
//console.log(lines);
var headers = dataPoints[0].split(','); // if you have header
var lines = [];
console.log(headers);
console.log(dataPoints.length);
for (var i = 1; i < dataPoints.length; i++) {
//console.log(i);
var point = dataPoints[i].split(',');
//console.log(point);
if (point.length == headers.length) {
var json= {};
for (var j = 0; j < headers.length; j++) {
if(headers[j]=='date'){
json[headers[j]] = new Date(point[j]);
}else if(headers[j]=='value'){
//console.log(point[j]);
json[headers[j]] = Number(point[j]);
}else{
json[headers[j]] = point[j];
}

}
lines.push(json);
console.log(json);
}
}

console.log(行);}

示例 CSV:

date,name,value
01/01/1991,xyz,14.4
01/01/1992,abc,20.5
01/02/1980,xy,60.8

修改后的代码

关于javascript - 如何使用Javascript从csv文件中查找每列的数据类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29074689/

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