Javascript convert array -


i have array of google analytics data:

[ ["2016-01-01","google","335"], ["2016-01-01","bing","135"], ["2016-01-01","yahoo","35"], ["2016-01-02","google","145"], ["2016-01-02","bing","115"], ........... ] 

it can large. simplest , fastest way following 2 arrays?

an array of unique date values:

["2016-01-01","2016-01-02","2016-01-03","2016-01-04"] - uniqe sorting date 

an array of objects group data source:

[{      source: 'google',      data: [335, 145,.....] // lenght array=count unique date }, {     source: 'bing',     data: [135, 115,.....] }, ... ] 

a solution intermediate object.

var array = [["2016-01-01", "google", "335"], ["2016-01-01", "bing", "135"], ["2016-01-01", "yahoo", "35"], ["2016-01-02", "google", "145"], ["2016-01-02", "bing", "115"]],      object = {},      keys = {},      uniquedata,      grouped = [];    array.foreach(function (a) {      keys[a[0]] = true;      object[a[1]] = object[a[1]] || {};      object[a[1]][a[0]] = a[2];  });  uniquedata = object.keys(keys).sort();  grouped = object.keys(object).map(function (k) {      return {          source: k,          data: uniquedata.map(function (a) {              return object[k][a] || 0;          })      };  });    document.write('<pre>' + json.stringify(uniquedata, 0, 4) + '</pre>');  document.write('<pre>' + json.stringify(grouped, 0, 4) + '</pre>');


Comments

Popular posts from this blog

java - nested exception is org.hibernate.exception.SQLGrammarException: could not extract ResultSet Hibernate+SpringMVC -

sql - Postgresql tables exists, but getting "relation does not exist" when querying -

asp.net mvc - breakpoint on javascript in CSHTML? -