I have the following data:
{
"students": [
{ "id": 1, "name": "Barbara" },
{ "id": 2, "name": "Grace" },
{ "id": 3, "name": "John" },
],
"assignments": [
{
"id": 1,
"name_id": 1,
"assignment": "Mathematics",
"assignment_difficulty": 3,
"assignment_fun": 4
},
{
"id": 2,
"name_id": 1,
"assignment": "Science",
"assignment_difficulty": 3,
"assignment_fun": 3
},
{
"id": 3,
"name_id": 1,
"assignment": "German",
"assignment_difficulty": 1,
"assignment_fun": 3
},
{
"id": 4,
"name_id": 1,
"assignment": "French",
"assignment_difficulty": 2,
"assignment_fun": 3
},
{
"id": 5,
"name_id": 1,
"assignment": "Sports",
"assignment_difficulty": 5,
"assignment_fun": 4
}
{
"id": 6,
"name_id": 2,
"assignment": "Science",
"assignment_difficulty": 4,
"assignment_fun": 3
},
{
"id": 7,
"name_id": 2,
"assignment": "Biology",
"assignment_difficulty": 2,
"assignment_fun": 5
},
{
"id": 8,
"name_id": 2,
"assignment": "English",
"assignment_difficulty": 1,
"assignment_fun": 4
},
{
"id": 9,
"name_id": 2,
"assignment": "French",
"assignment_difficulty": 3,
"assignment_fun": 4
},
{
"id": 10,
"name_id": 2,
"assignment": "Sports",
"assignment_difficulty": 2,
"assignment_fun": 4
},
{
"id": 11,
"name_id": 3,
"assignment": "Mathematics",
"assignment_difficulty": 1,
"assignment_fun": 3
},
{
"id": 12,
"name_id": 3,
"assignment": "Biology",
"assignment_difficulty": 3,
"assignment_fun": 4
},
{
"id": 13,
"name_id": 3,
"assignment": "English",
"assignment_difficulty": 4,
"assignment_fun": 2
},
{
"id": 14,
"name_id": 3,
"assignment": "German",
"assignment_difficulty": 3,
"assignment_fun": 4
},
{
"id": 15,
"name_id": 3,
"assignment": "Sports",
"assignment_difficulty": 2,
"assignment_fun": 5
}
]
Now I need to calculate the average difficulty and fun rates per assignment. As you can see, not every student has the same assignments.
What approach is the best when starting blanco. .map()
? Or better for (var i = 0; i < assignments.length; i++){//do something}
methode?
I assume it is wise to first iterate over the assignments by students and iterate within that iterate over the rates.
Or is wiser to iterate over the persons first and within that iteration over the assignments and its rates for that person?