0

我有一个这样的时间序列:

[
    {
        "_id": {
            "action": "click",
            "date": "2015-02-02T00:00:00+01:00"
        },
        "total": 5
    },
    {
        "_id": {
            "action": "hit",
            "date": "2015-02-02T00:00:00+01:00"
        },
        "total": 13
    },
    {
        "_id": {
            "action": "hit",
            "date": "2015-02-03T00:00:00+01:00"
        },
        "total": 25
    },
    {
        "_id": {
            "action": "click",
            "date": "2015-02-03T00:00:00+01:00"
        },
        "total": 7
    }
]

我需要做一些计算并返回一个类似的对象,特别是,我需要找到点击次数和点击次数之间的百分比(同一日期的点击次数/点击次数 * 100)返回这样的对象:

[
    {
        "_id": {
            "action": "ctr",
            "date": "2015-02-02T00:00:00+01:00"
        },
        "total": 38.46
    },
    {
        "_id": {
            "action": "ctr",
            "date": "2015-02-03T00:00:00+01:00"
        },
        "total": 28
    }
]

有什么提示吗?

4

1 回答 1

2
_.groupBy(array, function(el){ return el._id.date; });

以上将是您如何分组,然后您可以映射并计算您需要的内容。例子:

http://jsfiddle.net/j9Htk/114/

于 2015-02-03T16:53:54.313 回答