查看: 400  |  回复: 8
【奖励】 本帖被评价4次,作者lvcong358增加金币 3.2

[资源] SMATR 3 标准主轴分析使用指北

ps, 附件为本文所有内容 html 格式文件,因为我一开始以为直接复制过来是不用格式再排版的,因为我就是用html格式嘛,结果事与愿违,下面格式太乱,我也不想浪费时间排版了,不愿意看的就下载附件吧,或者去看我微信号里的。

SMATR 3 使用指北
祝介东

2017-10-19

声明: 本文纯属本人无聊的作品,有感于不定时的在木虫看到有人因为毕业跪求smatr有果或无果的帖子,为打发无聊的出差时慢慢长夜(各位看官,出差狗很多时候比单身狗惨多了,尤其是我这样的宅出差狗),本着娱乐自己,服务大众的目的,写下这个不靠谱的Smatr的使用指北,之所以不靠谱,是因为本人硕士毕业 n 年(n > 6),在这个博士教授遍地有的论坛实在是芝麻都不算的小人物,因此,对你有帮助了请使劲夸我,如果误导你了,你就再找别家,反正我不对我写的内容负责,因为我没这义务啊,所以不喜欢勿喷,这就算作本文的缘起了。 废话不说了,开始干货。

SMATR 3 是使用主轴 (MA) 或标准主轴 (SMA) 的方法用于拟合两个变量直线的软件包,这个包生态学上使用最多的是异速生长关系的研究,作者 David I. Warton 自己都说他们将这个包称之为估计和检验异速直线的问题,我认为更简单的说法为,这玩意不是用来拟合两个变量之间的关系的,即从x推导y,而是更接近于主成分分析,主要目的是来检验不同组数据之间的差异的。当年我为毕业时使用的是11年的版本,十分麻烦,现在已经经过 Remko A. Duursma 这种精通 R 代码的大牛维护后的 SMATR 3 已经十分友好了。

下文中 slope 均称之为斜率,elevation 均称之为截距,请对号入座。

sma 函数

这是这个软件包的核心函数,也是多数人想使用的分析方法,主要有如下三个使用方式:

sma(y~x) 拟合 SMA (y 对 x),返回斜率和截距的置信区间。
sma(y~x*groups) 检验几个 SMA 内是否有共同斜率,根据这个groups来进行拟合,groups 通俗的将就是你不同的处理,不同的分组的数据。
sma(y~x+groups) 和 2 是一样的,只不过每一个 groups 都有单独的截距。
我们以软件自带的 leaflife 数据来例证一下用法,数据比较简单,就是叶片寿命对叶片生物量,组别有两个,一个是降雨量高低,一个是营养元素的高低:
CODE:
library(smatr)
## Loading required package: plyr library(tidyverse)
## Loading tidyverse: ggplot2
## Loading tidyverse: tibble
## Loading tidyverse: tidyr
## Loading tidyverse: readr
## Loading tidyverse: purrr
## Loading tidyverse: dplyr
## Conflicts with tidy packages ----------------------------------------------
## arrange(): dplyr, plyr
## compact(): purrr, plyr
## count(): dplyr, plyr
## failwith(): dplyr, plyr
## filter(): dplyr, stats
## id(): dplyr, plyr
## lag(): dplyr, stats
## mutate(): dplyr, plyr
## rename(): dplyr, plyr
## summarise(): dplyr, plyr
## summarize(): dplyr, plyr data(leaflife)
# 只使用营养元素低的数据 low_nutr <- filter(leaflife, soilp == 'high')
# SMA 单独拟合不同降雨区的数据,并显示结果

sma(longev~lma*rain, log="xy", data = low_nutr) %>% summary()

## Call: sma(formula = longev ~ lma * rain, data = low_nutr, log = "xy")
## ## Fit using Standardized Major Axis
## ## These variables were log-transformed before fitting: xy
## ## Confidence intervals (CI) are at 95%
## ## ------------------------------------------------------------
## Results of comparing lines among groups.
## ## H0 : slopes are equal.
## Likelihood ratio statistic : 6.618 with 1 degrees of freedom ## P-value : 0.010093
## ------------------------------------------------------------
## ## Coefficients by group in variable "rain"
## ## Group: high
## elevation slope
## estimate -4.218236 2.119823
## lower limit -5.903527 1.451816
## upper limit -2.532946 3.095192
## ## H0 : variables uncorrelated.
## R-squared : 0.5039152
## P-value : 0.0014113
## ## Group: low
## elevation slope
## estimate -2.523634 1.1825381
## lower limit -3.135266 0.9398479
## upper limit -1.912003 1.4878965
## ## H0 : variables uncorrelated.
## R-squared : 0.7392636
## P-value : 1.462e-07
# SMA 单独拟合不同降雨区的数据,并检验共同斜率是否为1 sma(longev~lma*rain, log="xy", slope.test=1, data = low_nutr) %>% summary()
## Call: sma(formula = longev ~ lma * rain, data = low_nutr, log = "xy",
## slope.test = 1)
## ## Fit using Standardized Major Axis
## ## These variables were log-transformed before fitting: xy
## ## Confidence intervals (CI) are at 95%
## ## ------------------------------------------------------------
## Results of comparing lines among groups. ## ## H0 : slopes are equal.
## Likelihood ratio statistic : 6.618 with 1 degrees of freedom
## P-value : 0.010093
## ------------------------------------------------------------
## ## H0 : common slope not different from 1
## Likelihood ratio statistic = 14.62 with 2 degrees of freedom under H0
## P-value : 0.00066803 ## ## Coefficients by group in variable "rain"
## ## Group: high
## elevation slope
## estimate -4.218236 2.119823
## lower limit -5.903527 1.451816
## upper limit -2.532946 3.095192
## ## H0 : variables uncorrelated.
## R-squared : 0.5039152
## P-value : 0.0014113
## ## H0 : slope not different from 1
## Test statistic: r= 0.7602 with 15 degrees of freedom under H0
## P-value : 0.00039776
## ## Group: low
## elevation slope
## estimate -2.523634 1.1825381
## lower limit -3.135266 0.9398479
## upper limit -1.912003 1.4878965
## ## H0 : variables uncorrelated.
## R-squared : 0.7392636
## P-value : 1.462e-07
## ## H0 : slope not different from 1
## Test statistic: r= 0.3133 with 21 degrees of freedom under H0
## P-value : 0.1455 # SMA 单独拟合不同降雨区的数据,并检验是否有共同的截距

sma(longev~lma+rain, log="xy", data = low_nutr) %>% summary()
## Call: sma(formula = longev ~ lma + rain, data = low_nutr, log = "xy")
## ## Fit using Standardized Major Axis ## ## These variables were log-transformed before fitting: xy
## ## Confidence intervals (CI) are at 95% ##
## ------------------------------------------------------------
## Results of comparing lines among groups.
## ## H0 : slopes are equal.
## Likelihood ratio statistic : 6.618 with 1 degrees of freedom ## P-value : 0.010093
## ------------------------------------------------------------ ##
## H0 : no difference in elevation. ## Wald statistic: 19.46 with 1 degrees of freedom
## P-value : 1.0291e-05
## ------------------------------------------------------------ ##
## Coefficients by group in variable "rain" ##
## Group: high
## elevation slope
## estimate -2.678961 1.367928
## lower limit -3.278134 1.099831
## upper limit -2.079789 1.722882 ##
## H0 : variables uncorrelated.
## R-squared : 0.5039152
## P-value : 0.0014113 ## ## Group: low ## elevation slope
## estimate -2.935858 1.367928
## lower limit -3.565529 1.099831 ## upper limit -2.306186 1.722882
## ## H0 : variables uncorrelated. ## R-squared : 0.7392636 ## P-value : 1.462e-07
# 检验是否有漂移

sma(longev~lma+rain, log="xy", type="shift", data = low_nutr) %>% summary() #

# Call: sma(formula = longev ~ lma + rain, data = low_nutr, log = "xy", ## type = "shift") #
# ## Fit using Standardized Major Axis ##
## These variables were log-transformed before fitting: xy
## ## Confidence intervals (CI) are at 95%
## ## ------------------------------------------------------------
## Results of comparing lines among groups. ##
## H0 : slopes are equal.
## Likelihood ratio statistic : 6.618 with 1 degrees of freedom ## P-value : 0.010093
## ------------------------------------------------------------ ##
## H0 : no shift along common axis.
## Wald statistic: 2.539 with 1 degrees of freedom ## P-value : 0.11109
## ------------------------------------------------------------ ##
## Coefficients by group in variable "rain" ## ## Group: high ## elevation slope
## estimate -2.678961 1.367928
## lower limit -5.903527 1.099831
## upper limit -2.532946 1.722882 ##
## H0 : variables uncorrelated.
## R-squared : 0.5039152
## P-value : 0.0014113 ##
## Group: low ## elevation slope
## estimate -2.935858 1.367928
## lower limit -3.135266 1.099831
## upper limit -1.912003 1.722882 ##
## H0 : variables uncorrelated.
## R-squared : 0.7392636
## P-value : 1.462e-07

上面一堆都比较了什么?

对于 SMA,用的最多的就是比较多个直线之间的差异,也就是不同组别数据的差异。也就是下面这几点: ps:我不是学统计的,百度与我相关的唯一一篇自己写的文章就能看出来,因此,请参考,别深信,如果你统计功底好,也能读懂 English,请你看作者自己的文章,我也就是差不多谈谈,你们睁一只眼闭一只眼听听就好。

共同斜率检验: 共同斜率的检验是分析几组数据并进行推导的前提,这个检验是进行截距相等或延主轴没有漂移检验的前提。只有这些直线具有共同斜率的时候这些检验才有异议,但异速生长关系的推导不在此列。

共同截距的检验: 我的理解时,为得出论文里需要的显著差异,当这些分组均具有共同的斜率时,只能进一步比较他们在截距方向的差异了。这里的重点时共同斜率存在时才进行该比较,同志们。

主轴的漂移检验。 当既有共同斜率,又有共同截距,我们是不是害怕你的实验数据没有显著差异?没有办法得出结论了(搞不懂,为什么非要显著差异的结论)?那就再检验是否时沿着主轴有漂移啊。

以上三个检验,请看下图,十分清晰:

常用参数简介:

sma(y~x, slope.test=B) 检查SMA是否具有斜率B,生物学上通常检验是否时等速生长。

sma(y~x+groups, shift=T), 如上文,检查是否延共同主轴上有偏移。

multcomp=T, 将进行方差分析多重比较,若使用multcompmethod=“adjust” 则为控制多重比较谬误,使用 adjusted p 值。

log=“xy”,使用以10为底的对数处理数据,在异速生长关系中通常如此。

好了,就讲这些吧,感兴趣请关注我打发出差时间的微信公众号:R软件与生态学数据分析。
回复此楼

» 本帖附件资源列表

  • 欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
    本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:emuch2018@163.com
  • 附件 1 : smatr.7z
  • 2017-10-26 11:24:34, 387.48 K

» 猜你喜欢

» 本主题相关商家推荐: (我也要在这里推广)

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

aalang

银虫 (正式写手)


★★★★★ 五星级,优秀推荐

特别感谢!!最近正在学习用异速生长模型分析,具体操作层面很高兴看到这篇帖子
2楼2017-11-10 17:38:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

LL过河卒

新虫 (初入文坛)


★★★★★ 五星级,优秀推荐

正在搞有关方面的东西,您的分享对我帮助很大,
3楼2017-12-07 22:54:43
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

1550372973

新虫 (初入文坛)


引用回帖:
2楼: Originally posted by aalang at 2017-11-10 17:38:51
特别感谢!!最近正在学习用异速生长模型分析,具体操作层面很高兴看到这篇帖子

您好,请问您有这个软件吗?如果有的话,能发给我一份吗?将不胜感激!我的邮箱是:1550372973@qq.com     
5楼2018-01-02 16:28:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lilady

铁虫 (初入文坛)


引用回帖:
5楼: Originally posted by 1550372973 at 2018-01-02 16:28:00
您好,请问您有这个软件吗?如果有的话,能发给我一份吗?将不胜感激!我的邮箱是:1550372973qq.com     ...

这个是用的R里面smatr程序包哦
6楼2018-01-12 18:53:50
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

胖鱼七月

新虫 (初入文坛)


★★★★★ 五星级,优秀推荐

小白超受益,谢谢大神
7楼2018-03-14 21:03:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

胖鱼七月

新虫 (初入文坛)


楼主想请教,在Concentrations and resorption patterns of 13 nutrients in different plant functional
types in the karst region of south-western China文献中,作者利用SMA 进行分析,但没懂那个 β值是怎么来的
8楼2018-03-14 21:25:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
引用回帖:
8楼: Originally posted by 胖鱼七月 at 2018-03-14 21:25:09
楼主想请教,在Concentrations and resorption patterns of 13 nutrients in different plant functional
types in the karst region of south-western China文献中,作者利用SMA 进行分析,但没懂那个 β值是怎么 ...

文章里不是写了出处吗 f Kobe et al. (2005) ,跟smatr没关系,是这篇文章中的一个系数,你看看这篇文章,以及关于data analysis部分提到的其他文章
9楼2018-03-19 10:38:04
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
简单回复
2018-01-02 16:18   回复  
五星好评  顶一下,感谢分享!
相关版块跳转 我要订阅楼主 lvcong358 的主题更新
☆ 无星级 ★ 一星级 ★★★ 三星级 ★★★★★ 五星级
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[硕博家园] 征求读博的意见 +15 heyheyboy 2018-09-24 25/1250 2018-09-25 01:27 by 一帘红薯
[考研] 西农 +3 Ren. 2018-09-20 3/150 2018-09-25 01:06 by 我与卡罗
[基金申请] 国家级基金的难度 5+3 kmt20005 2018-09-21 12/600 2018-09-24 23:17 by ilovep3
[考博] 求助 +12 路与露与鹿 2018-09-23 12/600 2018-09-24 16:37 by 李雅的雅
[硕博家园] 研一刚来就和自己的同学有误会,好尴尬呐 +30 yanjaydon 2018-09-23 35/1750 2018-09-24 10:42 by fluent12.1
[硕博家园] 科研能力越差的老师越爱忽悠学生, +15 海上的小船 2018-09-23 17/850 2018-09-24 08:54 by lkk1213
[有机交流] 全合成 +6 骑车子 2018-09-19 8/400 2018-09-24 08:06 by 李雅的雅
[考博] 博士名额 +10 大智若愚sun 2018-09-21 24/1200 2018-09-23 23:16 by 大智若愚sun
[催化] 二氧化碳还原液相产物打核磁要怎么浓缩 +3 康康456 2018-09-22 3/150 2018-09-23 13:32 by gxytju2008
[考研] 心累 +9 局外的江流儿 2018-09-21 12/600 2018-09-23 10:10 by 东大明哥
[论文投稿] 求哪些国内中文期刊收录英文文章 +4 李腾飞考研 2018-09-20 8/400 2018-09-22 14:23 by 李腾飞考研
[硕博家园] 发明专利 +10 yaoqianghero 2018-09-19 11/550 2018-09-22 01:08 by andacaizi
[考研] 考研交流 +4 前面有樱桃 2018-09-20 11/550 2018-09-21 16:51 by 前面有樱桃
[硕博家园] 读研读的心累,该如何重拾信心 +19 xymai 2018-09-19 39/1950 2018-09-21 15:39 by xymai
[硕博家园] 求赐好名,丁泽…… +45 popbanana 2018-09-20 49/2450 2018-09-21 14:36 by transform39
[硕博家园] 还是逃不过数学 +5 羽绒雪花 2018-09-20 10/500 2018-09-20 20:54 by 廖小小川
[论文投稿] 投稿月余,状态仍然显示With Editor,急急急! +3 520xmc2006 2018-09-19 4/200 2018-09-19 23:34 by angleboy
[教师之家] 等着文章评职称 +15 wininghe 2018-09-18 16/800 2018-09-19 15:20 by xingchen~
[有机交流] 维尔斯迈尔试剂 +4 zu69 2018-09-18 4/200 2018-09-19 12:28 by 咸鱼小铃铛
[有机交流] 苯胺与酸酐的反应 10+3 (☆_☆) 2018-09-18 4/200 2018-09-19 10:54 by binzy
信息提示
请填处理意见