一个变量返回两个单独的数组

杜威夫

我目前正在编写一个提取 csv 文件最后几行的脚本。最后一行包含温度。我想把file1的温度加到file2的温度上来计算平均温度。这是到目前为止的代码:

var fs = require('fs');
var csv = require('csv');


var handler = function(err, data) {
    if (err) throw err;
    var avgtemp = []
    var lines = data.trim().split('\n');
    var lastLine = lines.slice(-1)[0];
    var fields = lastLine.split(',');
    var humidity = fields.slice(-1)[0];
    var temperature = fields.slice(-2)[0]
    var doe = avgtemp.push(parseFloat(temperature))
    console.log(avgtemp)

}
fs.readFile('datafile1.csv', 'utf-8', handler)
fs.readFile('datafile2.csv', 'utf-8', handler)


现在,当控制台日志返回以下内容时:

[ 24.57083333333333 ]
[ 20.57083333333333 ]

我希望它看起来像这样:

[24.57083333333333, 20.57083333333333]

我尝试了很多东西,但我不能做对。先感谢您。

害羞的

由于这两个请求没有以任何方式链接并且是异步的,因此您必须在读取两个文件后手动对数据进行分组。

我通常util.promisify()习惯于fs.readFile()从接受回调转换为返回承诺,因此Promise.all()一旦读取了两个文件,我就可以使用它来创建数组:

var fs = require('fs');
var csv = require('csv');
var { promisify } = require( 'util' );

var readFile = promisify( fs.readFile );

Promise
    .all([
        readFile( 'datafile1.csv' ),
        readFile( 'datafile2.csv' )
    ])
    .then( files => files.map( data => {
        var lines = data.trim().split('\n');
        var lastLine = lines.slice(-1)[0];
        var fields = lastLine.split(',');
        var humidity = fields.slice(-1)[0];
        var temperature = fields.slice(-2)[0];
        return parseFloat( temperature );
    }))
    //  Temperatures should equal [24.57083333333333, 20.57083333333333]
    .then( temperatures => console.log( temperatures ))
    .catch( error => {
        //  Handle error.
        console.error( error );
    });

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在一个函数中返回两个变量

来自分类Dev

在一个函数中返回两个变量

来自分类Dev

从两个单独的变量C#创建一个双精度值

来自分类Dev

如何从一个逗号分隔的列表中填充两个单独的数组?

来自分类Dev

在mongodb中的一个更新调用中推送到两个单独的数组

来自分类Dev

如何从一个输入创建两个单独的数组?

来自分类Dev

在一个图中绘制两个单独的图例

来自分类Dev

在一个单独的数组中显示两个数组的相同元素

来自分类Dev

如何在两个单独的变量上联接两个表,其中一个变量具有相同的名称

来自分类Dev

将一个数组的负值和正值提取到两个单独的数组中,

来自分类Dev

根据两个变量返回一个类对象C ++

来自分类Dev

在一个变量中从数据层返回两个值

来自分类Dev

如何从同一个java方法返回两个多维数组?

来自分类Dev

PHP关联数组交集返回两个元素,而不是一个

来自分类Dev

Javascript返回一个空数组,但其中有两个元素

来自分类Dev

JavaScript:如何从一个函数返回两个值并在另一个函数中调用这两个变量?

来自分类Dev

创建一个变量,其中包含由两个 .map() 组成的两个数组,以寻找匹配或交集

来自分类Dev

使用jQuery“ extend”连接两个数组将返回一个数组

来自分类Dev

基于两个单独的矩阵创建一个显示概率的数组,该矩阵显示两个期间的结果概率

来自分类Dev

一个变量的两个动作PHP

来自分类Dev

将两个变量合并为一个

来自分类Dev

一个循环中的两个变量

来自分类Dev

一个打印语句,两个变量在两个不同的行上打印

来自分类Dev

如何在Ruby中返回两个数组中较短的一个?

来自分类Dev

组合两个数组并返回一个结果集

来自分类Dev

组合两个数组,返回的结果有一个空的键和值

来自分类Dev

循环并检查两个数组总是只返回一个元素

来自分类Dev

如何在一个变量中合并两个数组?

来自分类Dev

从两个数组创建一个多维数组

Related 相关文章

  1. 1

    在一个函数中返回两个变量

  2. 2

    在一个函数中返回两个变量

  3. 3

    从两个单独的变量C#创建一个双精度值

  4. 4

    如何从一个逗号分隔的列表中填充两个单独的数组?

  5. 5

    在mongodb中的一个更新调用中推送到两个单独的数组

  6. 6

    如何从一个输入创建两个单独的数组?

  7. 7

    在一个图中绘制两个单独的图例

  8. 8

    在一个单独的数组中显示两个数组的相同元素

  9. 9

    如何在两个单独的变量上联接两个表,其中一个变量具有相同的名称

  10. 10

    将一个数组的负值和正值提取到两个单独的数组中,

  11. 11

    根据两个变量返回一个类对象C ++

  12. 12

    在一个变量中从数据层返回两个值

  13. 13

    如何从同一个java方法返回两个多维数组?

  14. 14

    PHP关联数组交集返回两个元素,而不是一个

  15. 15

    Javascript返回一个空数组,但其中有两个元素

  16. 16

    JavaScript:如何从一个函数返回两个值并在另一个函数中调用这两个变量?

  17. 17

    创建一个变量,其中包含由两个 .map() 组成的两个数组,以寻找匹配或交集

  18. 18

    使用jQuery“ extend”连接两个数组将返回一个数组

  19. 19

    基于两个单独的矩阵创建一个显示概率的数组,该矩阵显示两个期间的结果概率

  20. 20

    一个变量的两个动作PHP

  21. 21

    将两个变量合并为一个

  22. 22

    一个循环中的两个变量

  23. 23

    一个打印语句,两个变量在两个不同的行上打印

  24. 24

    如何在Ruby中返回两个数组中较短的一个?

  25. 25

    组合两个数组并返回一个结果集

  26. 26

    组合两个数组,返回的结果有一个空的键和值

  27. 27

    循环并检查两个数组总是只返回一个元素

  28. 28

    如何在一个变量中合并两个数组?

  29. 29

    从两个数组创建一个多维数组

热门标签

归档