首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >比较两条曲线的趋势差异

比较两条曲线的趋势差异
EN

Stack Overflow用户
提问于 2020-03-22 12:53:19
回答 1查看 49关注 0票数 0

我有一些关于全州毒品使用趋势的数据。我想知道随着时间的推移,静脉注射用药的性别差异与所有娱乐用药的性别差异是否发生了变化。

我的数据如下。我想我可能需要使用时间序列分析,但我不确定。任何帮助都将不胜感激。

enter image description here

EN

回答 1

Stack Overflow用户

发布于 2020-03-22 20:16:44

由于问题中的描述与数据不符,因为没有关于性别的信息,我们将从主题中假设,我们希望确定非法和iv的趋势是否相同。

比较趋势

请注意,在ivillicit的去趋势值中没有自相关性,因此我们将使用普通线性模型。

代码语言:javascript
复制
iv <- c(0.4, 0.3, 0.4, 0.3, 0.2, 0.2)
illicit <- c(5.5, 5.7, 4.8, 4.7, 6.1, 5.3)
time <- 2011:2016

ar(resid(lm(iv ~ time)))
## Call:
## ar(x = resid(lm(iv ~ time)))
##
## Order selected 0  sigma^2 estimated as  0.0024

ar(resid(lm(illicit ~ time)))
## Call:
## ar(x = resid(lm(illicit ~ time)))
##
## Order selected 0  sigma^2 estimated as  0.287

创建一个包含列timevalueind (ivillicit)的12x3数据框long。然后运行一个具有两个坡度的线性模型和一个具有一个坡度的线性模型。两者都有两次拦截。然后使用anova对它们进行比较。显然,它们没有显着不同,因此我们不能拒绝斜率相同的假设。

代码语言:javascript
复制
wide <- data.frame(iv, illicit)
long <- cbind(time, stack(wide))

fm2 <- lm(values ~ ind/(time + 1) + 0, long)
fm1 <- lm(values ~ ind + time + 0, long)
anova(fm1, fm2)

给予:

代码语言:javascript
复制
Analysis of Variance Table

Model 1: values ~ ind + time + 0
Model 2: values ~ ind/(time + 1) + 0
  Res.Df    RSS Df Sum of Sq      F Pr(>F)
1      9 1.4629                           
2      8 1.4469  1  0.016071 0.0889 0.7732

有坡度模型与无坡度模型的比较

实际上,斜率一开始并不显着,我们不能拒绝两个斜率都为零的假设。与没有坡度的两个截距模型相比。

代码语言:javascript
复制
fm0 <- lm(values ~ ind + 0, long)
anova(fm0, fm2)

给予:

代码语言:javascript
复制
Analysis of Variance Table

Model 1: values ~ ind + 0
Model 2: values ~ ind/(time + 1) + 0
  Res.Df    RSS Df Sum of Sq      F Pr(>F)
1     10 1.4750                           
2      8 1.4469  2  0.028143 0.0778 0.9258

或者运行逐步回归,我们发现它喜欢的模型是一个有两个截距并且没有斜率的模型:

代码语言:javascript
复制
step(fm2)

给予:

代码语言:javascript
复制
Start:  AIC=-17.39
values ~ ind/(time + 1) + 0

           Df Sum of Sq    RSS     AIC
- ind:time  2  0.028143 1.4750 -21.155
<none>                  1.4469 -17.386

Step:  AIC=-21.15
values ~ ind - 1

       Df Sum of Sq     RSS     AIC
<none>                1.475 -21.155
- ind   2    172.28 173.750  32.073

Call:
lm(formula = values ~ ind - 1, data = long)

Coefficients:
     indiv  indillicit  
      0.30        5.35  

记录转换后的值

如果我们使用log (值),那么我们同样没有发现自相关(未显示),但我们确实发现对数转换值的斜率有显着不同。

代码语言:javascript
复制
fm2log <- lm(log(values) ~ ind/(time + 1) + 0, long)
fm1log <- lm(log(values) ~ ind + time + 0, long)

anova(fm1log, fm2log)

给予:

代码语言:javascript
复制
Analysis of Variance Table

Model 1: log(values) ~ ind + time + 0
Model 2: log(values) ~ ind/(time + 1) + 0
  Res.Df     RSS Df Sum of Sq      F  Pr(>F)  
1      9 0.35898                              
2      8 0.18275  1   0.17622 7.7141 0.02402 *
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60796065

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档