Javascript 如何从csv文件中提取特定对象?

Javascript 如何从csv文件中提取特定对象?,javascript,csv,Javascript,Csv,我正在尝试获取此csv文件的特定部分,但无法使其正常工作。当我试着从中抽出一部分时,我得到了整个柱子。以下是文件的外观和我的代码: 代码 输出为: 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 依此类推,直到到达CSV的末尾 我尝试了两种不同的方法,但似乎没有任何效果。我对Javascript非常陌生,因此非常感谢您的帮助。我需要的一个例子是可以拉动第3行第1列的东西。00:10为输出。多谢各位 它将csv解析为一个对象数组

我正在尝试获取此csv文件的特定部分,但无法使其正常工作。当我试着从中抽出一部分时,我得到了整个柱子。以下是文件的外观和我的代码:

代码

输出为:

0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
2
2
2
2
依此类推,直到到达CSV的末尾

我尝试了两种不同的方法,但似乎没有任何效果。我对Javascript非常陌生,因此非常感谢您的帮助。我需要的一个例子是可以拉动第3行第1列的东西。00:10为输出。多谢各位

它将csv解析为一个对象数组

要访问第3行第1列,需要

console.log(data[3].Time);
数据是一个
数组
,每个元素对应一行数据。因此,要访问第3行,它将是
数据[3]

通过对象
csv
中每列的列标题访问每个单独的“列”

要使用空格访问对象键,可以使用“括号表示法”


问题在于“CSV”文件:您的屏幕截图显示您必须启用多个分隔符选项(逗号和制表符)才能使用导入工具

尝试使用一个分隔符:逗号

Time,Day ahead forecast,Hour ahead forecast,Current demand
00:00,23307,22058,21942
00:05,21744,21822,21849
00:10,21744,21822,21908
00:15,21744,21822,21809
00:20,21744,21615,21736
00:25,21744,21615,21688
00:30,21744,21615,21563
00:35,21744,21371,21479
00:40,21744,21371,21378
00:45,21744,21371,21256

因此,问题可能是由于时间-日预测、小时-日预测、当前需求不稳定。 您可以像@searlea建议的那样,用逗号、制表符或evn将管道分隔开

这里有一个有效的例子


你能显示你的控制台日志正在打印什么吗?console.log(data.Time[1]),你正在尝试获取第一列的第一个值吗?预期的输出是什么?是的,没有恒常性
时间日前预测、小时前预测、当前需求
。这是我的错误。我粘贴时没有捕捉到格式。文件本身的格式正确。@kemotoe的解决方案实现了总体预期产出。现在我遇到了从列名中有空格的列中获取数据的问题。这非常有效,谢谢!这非常适合为列选择行和值。我认为数组应该是列名而不是行。非常感谢。键也被索引了,因为现在我对名称中包含空格的列有问题。结果是,通过csv解析,我可以将标题重新映射到自定义定义的标题,并以这种方式提取列。这会奏效的perfectly@Rtmott编辑答案以包括使用空格访问对象键
console.log(data[3].Time);
console.log(data[3].['Day ahead forecast']);
Time,Day ahead forecast,Hour ahead forecast,Current demand
00:00,23307,22058,21942
00:05,21744,21822,21849
00:10,21744,21822,21908
00:15,21744,21822,21809
00:20,21744,21615,21736
00:25,21744,21615,21688
00:30,21744,21615,21563
00:35,21744,21371,21479
00:40,21744,21371,21378
00:45,21744,21371,21256