R - 对数回归分析

R - Regression Analysis for Logarthmic

我执行回归分析并尝试为 ggplot2 中的数据集 diamonds.csv 找到最合适的模型。我使用价格(响应变量)与克拉,并执行线性回归、二次和三次回归。该线不是最合适的。我意识到 excel 的对数具有最佳拟合线。但是,我不知道如何在 R 中编写代码来找到对数拟合线。任何人都可以帮忙吗?

比较价格与克拉

model<-lm(price~carat, data = diamonds)

模型2使用多项式进行比较

model2<-lm(price~carat + I(carat^2), data = diamonds)

在模型 3 中使用立方体

model3 <- lm(price~carat + I(carat^2) + I(carat^3), data = diamonds)

如何在 R 中对日志进行编码以获得与 excel 相同的结果?

y = 0.4299ln(x) - 2.5495 R² = 0.8468

谢谢!

您从 excel y = 0.4299ln(x) - 2.5495 报告的结果不包含任何多项式或三次项。你想做什么? price 非常偏斜,就像说 'income' 一样,通常的做法是从中获取日志。这也提供了您所指的 R2,但截距和克拉参数的系数非常不同。

m1 <- lm(log(price) ~ carat, data = diamonds)
summary(m1)
Call:
lm(formula = log(price) ~ carat, data = diamonds)

Residuals:
    Min      1Q  Median      3Q     Max 
-6.2844 -0.2449  0.0335  0.2578  1.5642 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept) 6.215021   0.003348    1856   <2e-16 ***
carat       1.969757   0.003608     546   <2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.3972 on 53938 degrees of freedom
Multiple R-squared:  0.8468,    Adjusted R-squared:  0.8468 
F-statistic: 2.981e+05 on 1 and 53938 DF,  p-value: < 2.2e-16