Skip to content

Instantly share code, notes, and snippets.

@rivertam
Created June 20, 2016 16:59
Show Gist options
  • Save rivertam/9819e1ff818c5c78d8952adbdedb2b54 to your computer and use it in GitHub Desktop.
Save rivertam/9819e1ff818c5c78d8952adbdedb2b54 to your computer and use it in GitHub Desktop.
IA insights
const retrieved = {
"instant_articles_insights": {
"data": [
{
"time": "2016-03-16T08:00:00+0000",
"value": "1"
},
{
"time": "2016-03-17T08:00:00+0000",
"value": "63"
},
{
"time": "2016-03-18T08:00:00+0000",
"value": "1580"
},
{
"time": "2016-03-19T08:00:00+0000",
"value": "2162"
},
{
"time": "2016-03-20T08:00:00+0000",
"value": "17337"
},
{
"time": "2016-03-21T08:00:00+0000",
"value": "5726"
},
{
"time": "2016-03-22T08:00:00+0000",
"value": "2136"
},
{
"time": "2016-03-23T08:00:00+0000",
"value": "104133"
},
{
"time": "2016-03-24T08:00:00+0000",
"value": "70550"
},
{
"time": "2016-03-25T08:00:00+0000",
"value": "327754"
},
{
"time": "2016-03-26T08:00:00+0000",
"value": "243946"
},
{
"time": "2016-03-27T08:00:00+0000",
"value": "78115"
},
{
"time": "2016-03-28T08:00:00+0000",
"value": "177038"
},
{
"time": "2016-03-29T08:00:00+0000",
"value": "176984"
},
{
"time": "2016-03-30T08:00:00+0000",
"value": "194464"
},
{
"time": "2016-03-31T08:00:00+0000",
"value": "170723"
},
{
"time": "2016-04-01T08:00:00+0000",
"value": "127742"
},
{
"time": "2016-04-02T08:00:00+0000",
"value": "133993"
},
{
"time": "2016-04-03T08:00:00+0000",
"value": "218089"
},
{
"time": "2016-04-04T08:00:00+0000",
"value": "53403"
},
{
"time": "2016-04-05T08:00:00+0000",
"value": "35979"
},
{
"time": "2016-04-06T08:00:00+0000",
"value": "39068"
},
{
"time": "2016-04-07T08:00:00+0000",
"value": "28688"
},
{
"time": "2016-04-08T08:00:00+0000",
"value": "14265"
},
{
"time": "2016-04-09T08:00:00+0000",
"value": "136621"
},
{
"time": "2016-04-10T08:00:00+0000",
"value": "206274"
},
{
"time": "2016-04-11T08:00:00+0000",
"value": "201773"
},
{
"time": "2016-04-12T08:00:00+0000",
"value": "77148"
},
{
"time": "2016-04-13T08:00:00+0000",
"value": "46456"
},
{
"time": "2016-04-14T08:00:00+0000",
"value": "59230"
},
{
"time": "2016-04-15T08:00:00+0000",
"value": "39154"
},
{
"time": "2016-04-16T08:00:00+0000",
"value": "25306"
},
{
"time": "2016-04-17T08:00:00+0000",
"value": "20865"
},
{
"time": "2016-04-18T08:00:00+0000",
"value": "11363"
},
{
"time": "2016-04-19T08:00:00+0000",
"value": "2171"
},
{
"time": "2016-04-20T08:00:00+0000",
"value": "3876"
},
{
"time": "2016-04-21T08:00:00+0000",
"value": "34921"
},
{
"time": "2016-04-22T08:00:00+0000",
"value": "48369"
},
{
"time": "2016-04-23T08:00:00+0000",
"value": "29043"
},
{
"time": "2016-04-24T08:00:00+0000",
"value": "17721"
},
{
"time": "2016-04-25T08:00:00+0000",
"value": "122191"
},
{
"time": "2016-04-26T08:00:00+0000",
"value": "129259"
},
{
"time": "2016-04-27T08:00:00+0000",
"value": "82214"
},
{
"time": "2016-04-28T08:00:00+0000",
"value": "63822"
},
{
"time": "2016-04-29T08:00:00+0000",
"value": "23990"
},
{
"time": "2016-04-30T08:00:00+0000",
"value": "5952"
},
{
"time": "2016-05-01T08:00:00+0000",
"value": "82851"
},
{
"time": "2016-05-02T08:00:00+0000",
"value": "74138"
},
{
"time": "2016-05-03T08:00:00+0000",
"value": "131639"
},
{
"time": "2016-05-04T08:00:00+0000",
"value": "92973"
},
{
"time": "2016-05-05T08:00:00+0000",
"value": "17674"
},
{
"time": "2016-05-06T08:00:00+0000",
"value": "93213"
},
{
"time": "2016-05-07T08:00:00+0000",
"value": "245123"
},
{
"time": "2016-05-08T08:00:00+0000",
"value": "119447"
},
{
"time": "2016-05-09T08:00:00+0000",
"value": "91226"
},
{
"time": "2016-05-10T08:00:00+0000",
"value": "122330"
},
{
"time": "2016-05-11T08:00:00+0000",
"value": "106470"
},
{
"time": "2016-05-12T08:00:00+0000",
"value": "40279"
},
{
"time": "2016-05-13T08:00:00+0000",
"value": "181836"
},
{
"time": "2016-05-14T08:00:00+0000",
"value": "237278"
},
{
"time": "2016-05-15T08:00:00+0000",
"value": "91723"
},
{
"time": "2016-05-16T08:00:00+0000",
"value": "155683"
},
{
"time": "2016-05-17T08:00:00+0000",
"value": "198350"
},
{
"time": "2016-05-18T08:00:00+0000",
"value": "64880"
},
{
"time": "2016-05-19T08:00:00+0000",
"value": "28335"
},
{
"time": "2016-05-20T08:00:00+0000",
"value": "219505"
},
{
"time": "2016-05-21T08:00:00+0000",
"value": "101921"
},
{
"time": "2016-05-22T08:00:00+0000",
"value": "55084"
},
{
"time": "2016-05-23T08:00:00+0000",
"value": "165190"
},
{
"time": "2016-05-24T08:00:00+0000",
"value": "297275"
},
{
"time": "2016-05-25T08:00:00+0000",
"value": "326117"
},
{
"time": "2016-05-26T08:00:00+0000",
"value": "200441"
},
{
"time": "2016-05-27T08:00:00+0000",
"value": "117569"
},
{
"time": "2016-05-28T08:00:00+0000",
"value": "116750"
},
{
"time": "2016-05-29T08:00:00+0000",
"value": "252508"
},
{
"time": "2016-05-30T08:00:00+0000",
"value": "213234"
},
{
"time": "2016-05-31T08:00:00+0000",
"value": "119330"
},
{
"time": "2016-06-01T08:00:00+0000",
"value": "103716"
},
{
"time": "2016-06-02T08:00:00+0000",
"value": "140236"
},
{
"time": "2016-06-03T08:00:00+0000",
"value": "92407"
},
{
"time": "2016-06-04T08:00:00+0000",
"value": "85690"
},
{
"time": "2016-06-05T08:00:00+0000",
"value": "125842"
},
{
"time": "2016-06-06T08:00:00+0000",
"value": "235781"
},
{
"time": "2016-06-07T08:00:00+0000",
"value": "164667"
},
{
"time": "2016-06-08T08:00:00+0000",
"value": "264152"
},
{
"time": "2016-06-09T08:00:00+0000",
"value": "203532"
},
{
"time": "2016-06-10T08:00:00+0000",
"value": "84198"
},
{
"time": "2016-06-11T08:00:00+0000",
"value": "42764"
},
{
"time": "2016-06-12T08:00:00+0000",
"value": "12963"
},
{
"time": "2016-06-13T08:00:00+0000",
"value": "69597"
},
{
"time": "2016-06-14T08:00:00+0000",
"value": "142218"
},
{
"time": "2016-06-15T08:00:00+0000",
"value": "154974"
},
{
"time": "2016-06-16T08:00:00+0000",
"value": "183239"
},
{
"time": "2016-06-17T08:00:00+0000",
"value": "134263"
},
{
"time": "2016-06-18T08:00:00+0000",
"value": "53195"
},
{
"time": "2016-06-19T08:00:00+0000",
"value": "21737"
},
{
"time": "2016-06-20T08:00:00+0000",
"value": "7293"
}
]
},
"id": "511566125580995"
}
const data = retrieved.instant_articles_insights.data;
const valuesByMonth = {};
data.forEach(datum => {
const month = datum.time.slice(0, 7);
valuesByMonth[month] = valuesByMonth[month] || [];
valuesByMonth[month].push(datum.value | 0);
});
const allTotal = Object.keys(valuesByMonth).reduce((totalTotal, month) => {
const valuesByThisMonth = valuesByMonth[month];
const total = valuesByThisMonth.reduce((agg, pv) => agg + pv, 0);
console.log(`${month}: ${total} pageviews`);
return totalTotal + total;
}, 0);
console.log(`final total: ${allTotal}`);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment