2016-07-27 10 views
1

У меня вопрос о линейной интерполяции в python \ numpy. У меня есть 4D-массив с данными (все данные в двоичных файлах), которые устроены таким образом: t-time (скажем, каждый час за месяц = ​​720) Z-уровни (скажем, Z '= 7) Y-data1 (по одному для каждого t и Z) X-data2 (по одному для каждого t и Z)Линейная интерполяция 4D-массива в Python/NumPy

Итак, я хочу получить новые данные Y и X для Z '= 25 с тем же t.

Первое, что у меня есть небольшая проблема с правильным способом чтения моих данных из двоичного файла. Во-вторых, я должен интерполировать первые 3 уровня на Z '= 15 и другие для других значений.

Если у кого-то есть идея, как это сделать и может помочь, это будет здорово. Спасибо за внимание!

ответ

0

Вы можете создать различные формулы интерполяции для различных комбинаций z 'и t.

Например, для z=7, и конкретное значение t, вы можете создать формулу интерполяции:

formula = scipy.interp1d(x,y) 

Еще один для скажем z=25 и так далее.

Тогда, учитывая любую комбинацию из z и t, вы можете обратиться к конкретной формуле интерполяции и выполнить интерполяцию.

0

В 2D, например, есть bilinear interpolation - с примером на квадрате единицы с z-значениями 0, 1, 1 и 0,5, как указано. Вставляемое значение между представлены цветами:

enter image description here

Тогда trilinear, и так далее ...

Следуйте шаблон, и вы увидите, что вы можете интерполяция гнезда для любого размера вам требуется ...

Смежные вопросы