Разница между данными
У меня есть один и тот же тип выходных данных из разных сценариев на разных временных шагах. Мне нужно выяснить разницу в значениях, если таковые имеются.
Например, столбцы данных:
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)