title: JSON group by key value to new JSON Javascript
body: <p>I have been reading some posts which are related to my question, whereas I have not been able to find a proper solution for what I'm trying to do hear.</p>
  
  <p>I have this JSON file that I am obtaining directly from my database via a sql query:</p>
  
  <pre><code>[
      {
          "scenario": "scenario-483d742c-4492-4a4f-95fa-7ccceac8bb18",
          "data": [
              {
                  "date": "2018-05-21",
                  "price": 14.173041264216105
              }
          ]
      },
      {
          "scenario": "scenario-483d742c-4492-4a4f-95fa-7ccceac8bb18",
          "data": [
              {
                  "date": "2018-05-22",
                  "price": 42.94691197077433
              }
          ]
      }, 
      {
          "scenario": "scenario-c705069f-fa53-4ff3-9f07-3fcbf9dc8d15",
          "data": [
              {
                  "date": "2018-05-22",
                  "price": 42.94691197077433
              }
          ]
      },
      {
          "scenario": "scenario-c705069f-fa53-4ff3-9f07-3fcbf9dc8d15",
          "data": [
              {
                  "date": "2018-05-22",
                  "price": 42.94691197077433
              }
          ]
      },
      {
          "scenario": "scenario-d58bb001-d7ed-4744-8f6c-8377519c7a99",
          "data": [
              {
                  "date": "2018-05-22",
                  "price": 42.94691197077433
              }
          ]
      },
      {
          "scenario": "scenario-d58bb001-d7ed-4744-8f6c-8377519c7a99",
          "data": [
              {
                  "date": "2018-05-22",
                  "price": 42.94691197077433
              }
          ]
      }
  ]
  </code></pre>
  
  <p>My objectif is to be able to sort/transform this json object to a new json object which is classified by the scenario, so, something that looks like:</p>
  
  <pre><code>[
      {
          "scenario": "scenario-483d742c-4492-4a4f-95fa-7ccceac8bb18",
          "data": [
              {
                  "date": "2018-05-21",
                  "price": 14.173041264216105
              },
              {
                  "date": "2018-05-22",
                  "price": 42.94691197077433
              }
          ]
      },
      {
          "scenario": "scenario-c705069f-fa53-4ff3-9f07-3fcbf9dc8d15",
          "data": [
              {
                  "date": "2018-05-22",
                  "price": 42.94691197077433
              },
              {
                  "date": "2018-05-22",
                  "price": 42.94691197077433
              }
  
          ]
      },
      {
          "scenario": "scenario-d58bb001-d7ed-4744-8f6c-8377519c7a99",
          "data": [
              {
                  "date": "2018-05-22",
                  "price": 42.94691197077433
              },  
              {
                  "date": "2018-05-22",
                  "price": 42.94691197077433
              }
   ]
  </code></pre>
  
  <p>I have been trying some javascript selfmade functions but I have not obtainend the desired result.
  This is the last thing I've tried:</p>
  
  <pre><code> let estructura = [];
  
      for (var j =0; j&lt;obj.length; j++){
        for (var i=0; i&lt;estructura.length; i++){
          if(obj[j]['scenario'] == estructura[i]['scenario']){
            estructura[i]['data'].push(obj[j]['data'])
          } else {
            console.log("no match, we add the scenario to estructura")
            estructura.push(
              {
                scenario:obj[j]['scenario'],
                data: []
              })
          }
        }
  
      }
  </code></pre>
  
  <p>Thank you</p>