Новости:

Новая редакция правил форума: 2.4. Если вопрос или ответ содержится во вложенном файле, все-равно кратко описывайте в сообщении вопрос или суть решения. Это необходимо, чтобы тему можно было найти через поиск.

Главное меню

Линейная аппроксимация

Автор IKor, 01.12.2014, 13:02

« назад - далее »

IKor

Прошу помощи в решении в принципе типовой задачи: линейной аппроксимации табличных данных (речь идет о свойствах азота). После конвертации исходной таблицы в новые координаты результат получился несколько отличным от запланированного - для ряда значений "известных" параметров формула не нашла решений - вместо них в таблице зияют пропуски, от которых хочется избавиться. Обычная линейная аппроксимация обеспечивает достаточную для моих расчетов точность, но пока у меня не получается найти простое решение на базе функций ИНДЕКС() и ПРОСМОТР() :(

что я делаю не так?

vikttur

С38 не пустая. Такое бывает, когда данные вставляются из сторонней программы.
Стать в строку формулы-Enter. Ячейка чистится.
Кодом пройтись по всему диапазону.

NooBasTiK

Болше подходит степенный тренд, у него аппроксимация 0,998

IKor

2 vikttur
Спасибо - я уже увидел эту проблему :(
сейчас переформулировал формулу так
=ПРОСМОТР(2;1/(D$1:D38<>"");$B$1:B38)
работает

2 NooBasTik
К сожалению, в моем примере представлена лишь часть (2 кривые из 200) данных, которые сведены в общую таблицу: зависимость функции от двух параметров (столбцы А и B) построить можно (поверхность), а вот с уравнениями линий тренда будет сложновато...
Или я ошибаюсь?

Есть ли еще идеи как построить аппроксимацию?

NooBasTiK

А как вы по А и B собрались поверхность строить? Вам еще один параметр нужен тогда, а то что в файле можно и стандартными средствами excel высчитать, пример выше.

IKor

2 NooBasTik

Если Вы обратили внимание, то со 132 строки файла примера значение в столбце A (температура) изменяется. с этой строки начинается отсчет новой кривой зависимости данных столбца C (давление) от значений столбца B (удельного объема). В моем полном файле температура изменяется от -50 до +150 с шагом 1... - Итого 200 кривых.

NooBasTiK

так, тогда как я понял температура с шагом 1 градус, а параметры Spec.Vol, Pressure надо найти? Потому что и в Spec.Vol и в Pressure есть пустоты, т.е. сделать экстраполяцию?

IKor

2 NooBastik
нет
нужны две зависимости:
* давления (столбец С)
* и энтальпии (столбец D)
по двум аргументам:
- температуры (столбец A)
- и удельного объема (столбец B)

В первых двух столбцах (аргументах функции) пустых ячеек нет.
Нужно сапроксимировать данные двух других столбцов по известным значениям

IKor

Вопрос закрыт

В каждой строке таблицы я предусмотрел ячейки, в которые записывал значения из найденных заполненных строк ниже и выше текущей:
=ПРОСМОТР(2;1/(AK$2:AK3<>"");AJ$2:AJ3)
={ИНДЕКС(AJ3:AJ53;ПОИСКПОЗ("*?";ИНДЕКС(""&AK3:AK53;); ))}
Данные из которых используются в линейной аппроксимации значений в пропущенных ячейках