有没有一种简单的方法可以从 matlab table
在 matlab 中制作数据透视表?
如 Excel 或 Python 中的 pandas.pivot_table
?我找到了 pivottable.m在文件交换上,但它不适用于 tables
。
这是一个例子,如果我有一个表t
:
name value
_____ _____
'Foo' 0
'Bar' -1
'Bar' 5
'Foo' 1
我想在 name
列上聚合,使用 @sum
函数,得到:
name sum_of_value
_____ ________
'Bar' 4
'Foo' 1
有没有简单的方法做到这一点?
最佳答案
您可以将 grpstats
用于简单的汇总表。
但是,使用 unstack
获得更复杂的枢轴。
% Example: Create columns from Var1, summing the values for each date:
T =
date item value
________ _______ _______
2015.2 a 1
2015.2 a 1
2015.2 b 1
2015.2 c 1
2015.4 a 2
2015.4 b 2
2015.4 c 2
2015.4 d 2
2016.2 a 3
2016.2 b 3
2016.2 c 3
2016.2 d 3
T2 = unstack(T, 'value', 'item', 'GroupingVariables', 'date', 'AggregationFunction', @sum);
T2 =
date a b c d
________ _____ _____ _____ _____
2015.2 2 1 1 NaN
2015.4 2 2 2 2
2016.2 3 3 3 3
关于matlab - 如何从表格在matlab中制作数据透视表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35503920/