У меня есть таблица SQL из (x, y) значений.Интерполяция таблицы функций SQL
x y
0.0 0.0
0.1 0.4
0.5 1.0
5.0 2.0
6.0 4.0
8.0 4.0
10.0 5.0
Столбец x проиндексирован. Я использую sqlite.
Моя конечная цель - получить y (x) для любого значения x. Я буду использовать линейную интерполяцию с использованием табличных значений. Как показано на рисунке ниже.
Есть ли способ для выполнения линейной интерполяции непосредственно с помощью запроса на выборку? Иначе получить значения интервалов, где принадлежит x, было бы достаточно.
Есть ли запрос, который даст мне последнюю меньшую и первую большую пару заданного x, чтобы я мог вычислить интерполированное значение y (x)?
Например, если x=2.0
, чтобы получить:
0.5 1.0
5.0 2.0
В случае х вне таблицы, чтобы получить два первых/последнее значение для выполнения экстраполяции.
Например, если x=20.0
получить:
8.0 4.0
10.0 5.0
Что вы хотите знать? Как получить значения y или как интерполировать? –
@CL, оба или все, что возможно. Если интерполяция невозможна, достаточно получить две пары. – ztik
@CL Я редактировал вопрос, чтобы сделать его более понятным. – ztik