数据之间的差异

时间:2011-05-03 21:54:16

标签: matlab statistics

我在不同的时间步骤中使用来自不同场景的相同类型的输出数据。我需要找出值的差异,如果有的话。

例如,数据列:

Timestep, DataX_derivedfromA, DataX_derivedfromB, DataXderivedfromC, DataXderivedfromD

如何确定每个时间步的最大差异 我可以使用哪些其他统计方法来显示值的差异?

感谢。

2 个答案:

答案 0 :(得分:0)

任何两个元素之间的最大差异将是最大和最小之间的差异:

data = [1 -1 5 2; -3 -7 3 4];
max_diff = max(data, [], 2) - min(data, [], 2)
max_diff =
6
11

您可以使用blkproc找到负责最小值和最大值的列的索引(如果您没有映像工具包,则可以从文件交换中找到blockfun)。

fun = @(x) [find(x==min(x)) find(x==max(x))];
idx = blkproc(data, [1 4], fun)

idx =
 2     3
 2     4

答案 1 :(得分:0)

我可能会误解你想要达到的目标,但希望这会有所帮助:

fromA = [1 2 3 5];
fromB = [1 3 4.5 2];

M = [fromA; fromB];

option1 = max(diff(M')')

或许你正在寻找这个:

option2 = max(M) - min(M)