gpt4 book ai didi

javascript - Lodash 或 JS GroupBy 和数组数组的计数

转载 作者:行者123 更新时间:2023-11-29 17:54:25 25 4
gpt4 key购买 nike

我有一个输入:

results = [
[ "Mon Nov 14 08:08:14 GMT+07:00 2016", "Ian Warner", "ian.warner@drykiss.com", "DryKISS1", "small", "SW192EZ", "undefined" ],
[ "Mon Nov 14 08:08:14 GMT+07:00 2016", "Ian Warner", "ian.warner@drykiss.com", "DryKISS2", "large", "SW192EZ", "undefined" ],
[ "Mon Nov 14 08:08:14 GMT+07:00 2016", "Ian Warner", "ian.warner@drykiss.com", "DryKISS2", "large", "SW192EZ", "undefined" ],
[ "Mon Nov 14 08:08:14 GMT+07:00 2016", "Ian Warner", "ian.warner@drykiss.com", "DryKISS2", "medium", "SW192EZ", "undefined" ],
]

我希望输出是这样的

small
DryKISS1 : 1
medium
DryKISS2 : 1
large
DryKISS1 : 5
DryKISS2 : 2
DryKISS3 : 1

基本上按大小分组,然后在相同大小的括号中对公司名称求和。

我一直在玩下面的东西,但是因为大多数示例都是针对哈希/对象而迷路的

console.log _.chain( results ).groupBy( 4 ).map( ( value, key ) ->
[
key
_.reduce( value, ( ( result, currentObject ) ->
{
company: result[ 3 ]
}
))
]
).value()

感谢任何帮助

最佳答案

按第 4 列分组,然后使用转换按第 3 列计算项目数:

var data = [
["Mon Nov 14 08:08:14 GMT+07:00 2016", "Ian Warner", "ian.warner@drykiss.com", "DryKISS1", "small", "SW192EZ", "undefined"],
["Mon Nov 14 08:08:14 GMT+07:00 2016", "Ian Warner", "ian.warner@drykiss.com", "DryKISS2", "large", "SW192EZ", "undefined"],
["Mon Nov 14 08:08:14 GMT+07:00 2016", "Ian Warner", "ian.warner@drykiss.com", "DryKISS2", "large", "SW192EZ", "undefined"],
["Mon Nov 14 08:08:14 GMT+07:00 2016", "Ian Warner", "ian.warner@drykiss.com", "DryKISS2", "medium", "SW192EZ", "undefined"],
];

var result = _(data)
.groupBy(4)
.transform(function(result, items, key) {
result[key] = _.countBy(items, 3);
})
.value();

console.log(result);
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.0/lodash.min.js"></script>

关于javascript - Lodash 或 JS GroupBy 和数组数组的计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40593879/

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