Разница между данными

У меня есть один и тот же тип выходных данных из разных сценариев на разных временных шагах. Мне нужно выяснить разницу в значениях, если таковые имеются.

Например, столбцы данных:

Timestep, DataX_derivedfromA, DataX_derivedfromB, DataXderivedfromC, DataXderivedfromD

Как я могу узнать, если максимальный дифференциал на каждом шаге по времени.
Какие другие статистические методы я мог бы использовать, чтобы показать разницу в значениях?

Благодарю.

2 ответа

Максимальная разница между любыми двумя элементами будет равна разнице между самым большим и самым маленьким:

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

Вы можете найти индексы столбцов, отвечающих за минимальное и максимальное значения, используя blkproc (или blockfun из File Exchange, если у вас нет инструментария обработки изображений).

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

idx =
 2     3
 2     4

Я могу неправильно понять, чего вы пытаетесь достичь, но, надеюсь, это поможет:

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

M = [fromA; fromB];

option1 = max(diff(M')')

Или, возможно, вы ищете это:

option2 = max(M) - min(M)
Другие вопросы по тегам