R语言中的Theil-Sen回归分析

作者: 拓端tecdat | 来源:发表于2020-03-24 14:16 被阅读0次

原文链接:http://tecdat.cn/?p=10080

Theil-Sen估计器是一种在社会科学中不常用 的简单线性回归估计器 。三个步骤:

在数据中所有点之间绘制一条线

计算每条线的斜率

中位数斜率是 回归斜率

用这种方法计算斜率非常可靠。当误差呈正态分布且没有异常值时,斜率与OLS非常相似。

有几种获取截距的方法。如果 关心回归中的截距,那么知道 软件在做什么是很合理的。

当我对异常值和异方差性有担忧时,请在上方针对Theil-Sen进行简单线性回归的评论 。

我进行了一次模拟,以了解Theil-Sen如何在异方差下与OLS比较。它是更有效的估计器。

library(simglm) library(ggplot2) library(dplyr) library(WRS) # Hetero nRep <- 100 n.s <- c(seq(50, 300, 50), 400, 550, 750, 1000) samp.dat <- sample((1:(nRep*length(n.s))), 25) lm.coefs.0 <- matrix(ncol = 3, nrow = nRep*length(n.s)) ts.coefs.0 <- matrix(ncol = 3, nrow = nRep*length(n.s)) lmt.coefs.0 <- matrix(ncol = 3, nrow = nRep*length(n.s)) dat.s <- list() ggplot(dat.frms.0, aes(x = age, y = sim_data)) + geom_point(shape = 1, size = .5) + geom_smooth(method = "lm", se = FALSE) + facet_wrap(~ random.sample, nrow = 5) + labs(x = "Predictor", y = "Outcome", title = "Random sample of 25 datasets from 15000 datasets for simulation", subtitle = "Heteroscedastic relationships")

need-to-insert-img

need-to-insert-img

ggplot(coefs.0, aes(x = n, colour = Estimator)) + geom_boxplot(  aes(ymin = q025, lower = q25, middle = q50, upper = q75, ymax = q975), data = summarise(   group_by(coefs.0, n, Estimator), q025 = quantile(Slope, .025),   q25 = quantile(Slope, .25), q50 = quantile(Slope, .5),   q75 = quantile(Slope, .75), q975 = quantile(Slope, .975)), stat = "identity") + geom_hline(yintercept = 2, linetype = 2) + scale_y_continuous(breaks = seq(1, 3, .05)) + labs(x = "Sample size", y = "Slope",   title = "Estimation of regression slope in simple linear regression under heteroscedasticity",   subtitle = "1500 replications - Population slope is 2",   caption = paste(    "Boxes are IQR, whiskers are middle 95% of slopes",    "Both estimators are unbiased in the long run, however, OLS has higher variability",    sep = "\n"   ))

need-to-insert-img

need-to-insert-img

相关文章

  • R语言中的Theil-Sen回归分析

    原文链接:http://tecdat.cn/?p=10080 Theil-Sen估计器是一种在社会科学中不常用 的...

  • R数据分析:一般线性回归的做法和解释

    发现大家做分析做的最多的还是线性回归,很多人咨询的都是线性回归的问题,今天专门出一个线性回归的文章。 在R语言中我...

  • R语言--逐步回归分析

    逐步回归分析是以AIC信息统计量为准则,通过选择最小的AIC信息统计量,来达到删除或增加变量的目的。R语言中用于逐...

  • R语言生存分析01

    R语言生存分析 生存分析是医学数据挖掘中的重要内容 R语言中用于生存分析的包主要有survival与survmin...

  • R语言笔记1:初识数据结构

    简介 R语言是一套开源的数据分析解决方案。R语言中提供了多种存储数据的对象类型,包括标量(R语言中的标量是由向量的...

  • 判别分析

    http://www.docin.com/p-1401911846.html R语言中的线性判别分析R语言分类算法...

  • R语言——回归分析

    一:回归的类型 简单线性:用一个量化的解释变量预测一个量化的相应变量 多项式:用一个来量化的解释变量预测一个量化的...

  • R programming - WEEK4

    参考文献 R语言实例-数据过滤grep正则表达式R 语言中,数据框依据不同列进行排序R语言rank函数详细解析R语...

  • spss stata 数据分析

    SPSS/Stata/R/python/Matlab代分析 代做数据分析 统计分析 调查问卷分析 画图 ,回归 t...

  • R语言回归模型中update的应用

    update在R语言中回归模型中,称为修正函数 可用于模型变量的增加、较少 用法举例: #建立数据集 toothp...

网友评论

    本文标题:R语言中的Theil-Sen回归分析

    本文链接:https://www.haomeiwen.com/subject/bvuoyhtx.html