我是一个刚接触Matlab的新手,但我有其他编程语言的一些经验。我在Matlab中导入了一个非常大的来自MySQL的表格。它被表示为一个类似于这样的单元格数组:
date key sales weight name
12/11 101 1200 20 blue
12/11 178 1200 70 purple
13/11 209 1300 15 purple
12/11 101 1200 10 blue
14/11 678 1200 10 yellow
12/11 340 1500 30 green
17/11 178 1900 50 purple
我希望您能将输出变成这样:
key sales weight name
101 2400 30 blue
178 3100 120 purple
209 1300 15 purple
678 1200 10 yellow
340 1500 30 green
我想要将在“key”列中具有相同数字的行合并。同时,我想要对“sales”和“weight”列求和,并保留“name”列(每个“key”具有相同的“name”,但每个“name”可以有多个“keys”)。
我知道可以使用for循环实现,但由于我需要以类似但不同的方式操作许多表格,因此这会导致计算量过大。
我已经阅读了类似问题的解决方案,可以使用accumarray来解决,但是能否使用带有cell数组的子函数来完成?它应该是什么样子的?