определить формулу набора данных - PullRequest
1 голос
/ 26 августа 2011

У меня есть небольшой фрейм данных с экспоненциально убывающей тенденцией Я хотел бы извлечь формулу на основе данных в моем фрейме данных? Возможно ли это, и если да, то как я могу извлечь формулу?

1 Ответ

1 голос
/ 26 августа 2011

Чтобы получить наиболее подходящую экспоненциальную кривую, вам нужно в основном преобразовать кривую в линейную и найти «линейное соответствие», а затем преобразовать ее обратно.Например, здесь данные уменьшаются в геометрической прогрессии.

t <- c(0,2,4,7)
y <- c(25,11,4,3)

Затем возьмите лог y.

y2 <- log10(y)

Затем модель y2 как функцию времени.

lm(y2~t)

Вы получитенаклон и перехват в обычной форме линейного уравнения (y = mx + b), но с использованием log (y).Чтобы получить экспоненциальное уравнение линии, поместите наклон и точку пересечения в следующую форму:

y = A*r^t

Где A = 10^intercept и r = 10^slope.

Для этих данных ваше уравнение будетбыть:

y = 20.77304*0.7333309^t

Если вы хотите построить их вместе, определите:

expLine <- function(t) 20.77304*0.7333309^t

Затем plot(t,y) и curve(expLine,0,7,n=101,add=TRUE).

...