Я все еще учусь lua, и функция пар великолепна, но я явно не понимаю, как правильно ее использовать:
Я пытаюсь подсчитать общее значение в Вложенная таблица, основанная на ее первом значении, а не ключе.
У меня есть таблица:
arr = {}
arr[100] = {1, "alpha", 4}
arr[10740] = {1, "bravo", 6}
arr[26104] = {2, "charlie", 7}
arr[150] = {3, "delta", 1}
arr[1006] = {2, "echo", 0}
arr[91002] = {1, "foxtrot", 2}
- k - случайный атрибут - нечетный для ключа, но я должен быть таким образом
- v [1] - это идентификатор группы,
- v [2] - это имя группы,
- v [3] - это номер в группе
Теперь я могу использовать парную функцию для подсчета суммы v [3] в таблице:
count = 0
for k, v in pairs(arr) do
count = count + v[3]
end;
print count
Что мне нужно сделать, так это вычислить сумму v [3] сгруппированных по v [1]. В таблице v [1] задано фиксированное число 1-16, но их может быть разное количество.
, но нужен результат чего-то вроде:
- Группа 1 = 12
- Группа 2 = 7
- Группа 3 = 1
Я могу добиться этого путем создания отдельных таблиц, вынимая все значения из группы 1 и затем, используя вышеизложенное, - но я чувствую, что как будто должен быть лучший способ.
Большое спасибо заранее.