【发布时间】:2017-07-18 14:04:24
【问题描述】:
我有下一个二维数组,其中第一个组件属于 ActiveSupport::TimeWithZone,第二个组件是一个字符串
[[Sun, 16 Jul 2017 14:41:56 -03 -03:00, "open"],
[Sun, 16 Jul 2017 14:41:56 -03 -03:00, "closed"],
[Sun, 16 Jul 2017 14:41:56 -03 -03:00, "closed"],
[Mon, 10 Jul 2017 00:00:00 -03 -03:00, "open"],
[Sun, 16 Jul 2017 14:45:31 -03 -03:00, "closed"],
[Sun, 16 Jul 2017 14:44:41 -03 -03:00, "open"],
[Sun, 16 Jul 2017 14:44:39 -03 -03:00, "closed"],
[Sun, 16 Jul 2017 14:44:13 -03 -03:00, "open"],
[Mon, 10 Jul 2017 00:00:00 -03 -03:00, "closed"],
[Fri, 14 Jul 2017 00:00:00 -03 -03:00, "open"],
[Mon, 17 Jul 2017 00:00:00 -03 -03:00, "open"]]
我需要以有效的方式将该数组转换为
{["09-Jul", "open"]=>2, ["16-Jul", "open"]=>1, ["09-Jul", "closed"]=>0, ["16-Jul", "closed"]=>1}
也就是说,我需要将第一个组件转换为 %b-%d 格式。另外,我需要按周分组和“状态”。最后我需要对这些分组值进行计数,并以哈希格式呈现数据作为第二个示例
【问题讨论】:
-
你想出的低效方法是什么?
标签: ruby-on-rails ruby