Я не уверен, что R может это сделать (я предполагаю, что может, но, может быть, это просто потому, что я склонен предполагать, что R может делать что угодно :-)). Мне нужно найти наиболее подходящее уравнение для описания набора данных.
Например, если у вас есть эти точки:
df = data.frame(x = c(1, 5, 10, 25, 50, 100), y = c(100, 75, 50, 40, 30, 25))
Как получить наиболее подходящее уравнение? Я знаю, что вы можете получить наиболее подходящую кривую с помощью:
plot(loess(df$y ~ df$x))
Но, как я понял, вы не можете извлечь уравнение, см. Подгонка лесса и результирующее уравнение .
Когда я пытаюсь построить его сам (обратите внимание, я не математик, так что это, вероятно, не идеальный подход :-)), я получаю что-то вроде:
y.predicted = 12.71 + ( 95 / (( (1 + df$x) ^ .5 ) / 1.3))
Какой вид, кажется, приближается к нему, но я не могу не думать, что, вероятно, существует что-то более элегантное :-)
У меня такое ощущение, что подбор линейной или полиномиальной модели также не сработает, потому что формула кажется отличной от той, которую обычно используют эти модели (т. Например, подход в Подгонка полиномиальной модели к данным в R дает довольно плохие приближения.
Я помню давно, что существуют языки (Matlab может быть одним из них?), которые делают такие вещи. Может ли R сделать это, или я просто не в том месте?
(Общая информация: в основном нам нужно найти уравнение для определения чисел во втором столбце на основе чисел в первом столбце, но мы сами определяем числа. У нас есть представление о том, как мы хотим, чтобы кривая выглядела. как, но мы можем скорректировать эти числа в уравнение, если мы получим лучшее соответствие. Речь идет о цене продукта (более дешевая альтернатива дорогому программному обеспечению для качественного анализа данных); чем больше «проектных кредитов» вы покупаете, тем дешевле вместо того, чтобы заставлять людей покупать определенное количество (т.е. 5, 10 или 25), было бы лучше иметь формулу, чтобы люди могли покупать именно то, что им нужно, но, конечно, для этого нужна формула. идея для некоторых цен, которые мы считаем приемлемыми, но теперь нам нужно перевести это в уравнение.