#r #regression #exponential
#r #регрессия #экспоненциальный
Вопрос:
Итак, я создал экспоненциальную регрессию, используя 50 точек данных, взятых за 50 дней. Поиск сводки по нему привел к следующему:
> summary(TotalModel)
Call:
lm(formula = log(Total) ~ Time)
Residuals:
Min 1Q Median 3Q Max
-1.0570 -0.4827 -0.1168 0.5545 0.8195
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 4.537196 0.165779 27.37 <2e-16 ***
Time 0.148937 0.005658 26.32 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 0.5773 on 48 degrees of freedom
Multiple R-squared: 0.9352, Adjusted R-squared: 0.9339
F-statistic: 692.9 on 1 and 48 DF, p-value: < 2.2e-16
Теперь, хотя это дает мне некоторую необходимую информацию, я хочу взять скорость роста этой экспоненциальной модели и распечатать ее в переменной, которую я позже экспортирую в электронную таблицу (и повторить это еще примерно 13 раз).). Как мне получить это значение?
Ответ №1:
Прежде всего, в приведенном выше примере подобранная модель:
log(Total) = 4.537196 0.148937 * Time
Возведя в степень обе стороны, мы имеем:
Total = exp(4.537196)*exp(0.148937 * Time)
Ваш темп роста равен 0,148937, что является коэффициентом Time
переменной. Чтобы извлечь это значение, вы могли бы сделать
TotalModel$coefficients["Time"]
В общем, в будущем, если вы пытаетесь понять, как можно извлечь определенное значение из объекта, несколько вещей, которые вы можете попробовать, включают в себя: (не всегда будет работать для каждого объекта, но стоит попробовать)
- Посмотрите на структуру вашей модели, выполнив
str(TotalModel)
. В вашем случае вы увидите, что одним из элементов являетсяcoefficients
, к которому вы можете получить доступ с помощьюTotalModel$coefficients
- Введите
TotalModel$
(со знаком доллара) и нажмите клавишу tab на клавиатуре, чтобы увидеть, к каким возможным элементам можно получить доступ.
Ответ №2:
Итак, общая экспоненциальная функция имеет следующий вид, где — экспоненциальная скорость роста:
Похоже, вы оценили преобразованную логарифмически-линейную модель, т.е.:
Или, другими словами, модель OLS, которую вы оценили, равна:
где и
когда .
Таким образом, экспоненциальный темп роста равен:
Вы можете вычислить это по TotalModel
объекту, где TotalModel$coefficient['Time']
находится и так
r = exp(TotalModel$coefficient['Time']) - 1
далее.