精华内容
下载资源
问答
  • 原文链接http://tecdat.cn/?p=14850​tecdat.cn回归分析是一种十分常见的数据分析方法,通过观测数据确定变量间的相互关系.传统回归分析以点数据为研究对象,预测结果也是点数据,而真实数据往往在一定范围内变动的....

    原文链接

    http://tecdat.cn/?p=14850​tecdat.cn

    f8bd625aac1bd82a977c59d860370175.png

    回归分析是一种十分常见的数据分析方法,通过观测数据确定变量间的相互关系.传统回归分析以点数据为研究对象,预测结果也是点数据,而真实数据往往在一定范围内变动的.基于置信度可以形成置信区间,一定程度弥补了预测值为单点的不足,但将点数据作为研究对象,以点带表某范围内的所有数据,往往存在信息丢失的问题.

    区间回归分析是一种以区间数为研究对象的数据分析方法.区间数能反映出数据的变动范围,更符合现实情况.区间型符号数据是区间数的一种,通过"数据打包"形成,因此除具有区间端点信息外,还具有区间内部散点信息.

    本文解释如何在R里对有区间变量的情况下提取上下限值。让我们从生成数据开始,


    1. n=200

    2. set.seed(123)

    3. X=rnorm(n)

    4. Y=2+X+rnorm(n,sd = .3)

    假设现在我们不再观察实变量xx,而只是观察一个类(我们将创建八个类,每个类有八分之一的观察值)

    例如,对于第一个值,我们有


    1. as.character(Xcut[1])

    2. [1] "(-0.626,-0.348]"

    要提取有关这些边界的信息,我们可以使用以下代码,该代码返回区间的下限,上限

    我们可以检查我们的第一个观察


    1. extraire(Xcut[1])

    2. lower mid upper

    3. -0.626 -0.487 -0.348

    我们可以在数据库中创建三个附加变量


    1. B$lower=B2[1,]

    2. B$mid =B2[2,]

    3. B$upper=B2[3,]

    我们可以比较4个回归(i)我们对8个类别进行回归,即我们的8个因子(ii)我们对区间的下限进行回归,(iii)对区间的“平均值”值进行回归(iv)上限

    我们可以将预测与我们的四个模型进行比较


    1. plot(B$Y,predict(regF),ylim=c(0,4))

    2. points(B$Y,predict(regM),col="red")

    3. points(B$Y,predict(regU),col="blue")

    4. points(B$Y,predict(regL),col="purple")

    5. abline(a=0,b=1,lty=2)

    6a041bce8fc1316c5555cf006fe7f85e.png

    更进一步,我们还可以比较模型的AIC,


    1. AIC(regF)

    2. [1] 204.5653

    3. AIC(regM)

    4. [1] 201.1201

    5. AIC(regL)

    6. [1] 266.5246

    7. AIC(regU)

    8. [1] 255.0687

    如果下限值和上限的使用不是确定性的,则应注意,使用区间的平均值会比使用8个因素得到更好的结果。


    参考文献

    1.用SPSS估计HLM层次线性模型模型

    2.R语言线性判别分析(LDA),二次判别分析(QDA)和正则判别分析(RDA)

    3.基于R语言的lmer混合线性回归模型

    4.R语言Gibbs抽样的贝叶斯简单线性回归仿真分析

    5.在r语言中使用GAM(广义相加模型)进行电力负荷时间序列分析

    6.使用SAS,Stata,HLM,R,SPSS和Mplus的分层线性模型HLM

    7.R语言中的岭回归、套索回归、主成分回归:线性模型选择和正则化

    8.R语言用线性回归模型预测空气质量臭氧数据

    9.R语言分层线性模型案例

    展开全文
  • R语言ggplot2可视化:拟合二次曲线(quadratic curve)并使用ggplot2进行可视化、可视化两个响应变量和一个预测变量的二次曲线

    R语言ggplot2可视化:拟合二次曲线(quadratic curve)并使用ggplot2进行可视化、可视化两个响应变量和一个预测变量的二次曲线

     

    目录

    展开全文
  • R语言的一般线性模型 R语言的一般线性模型用函数:lm(),即可轻松实现。 例子 建立一般线性模型 NC.glm1 = lm(fmri.SFG_R_CerebellumGM_L ~ age + gender + race,data = NC) summary(NC.glm1) 这里解释一下变量(我...

    R语言的一般线性模型

    R语言的一般线性模型用函数:lm(),即可轻松实现。

    例子

    建立一般线性模型

    NC.glm1 = lm(fmri.SFG_R_CerebellumGM_L ~ age + gender + race,data = NC)
    summary(NC.glm1)
    

    这里解释一下变量(我直接copy我项目里面的两行代码),因变量y就是fmri.SFG_R_CerebellumGM_L,自变量x有三个age,gender(因子变量:female、male)和race(因子变量:AA、Asian、Cauc、Hispanic、Other),这些都是数据集NC的某一列。建立y和x的一般线性模型,得到的结果如下所示:

    Call:
    lm(formula = fmri.SFG_R_CerebellumGM_L ~ age + gender + race, 
        data = NC)
    
    Residuals:
         Min       1Q   Median       3Q      Max 
    -0.54058 -0.20018 -0.01524  0.15821  1.00124 
    
    Coefficients:
                  Estimate Std. Error t value Pr(>|t|)  
    (Intercept)   0.442044   0.168781   2.619   0.0103 *
    age           0.003510   0.006861   0.512   0.6102  
    genderMale    0.023009   0.060557   0.380   0.7049  
    raceAsian     0.008780   0.205792   0.043   0.9661  
    raceCauc     -0.073530   0.067110  -1.096   0.2761  
    raceHispanic  0.035361   0.148205   0.239   0.8120  
    raceOther    -0.107146   0.168367  -0.636   0.5261  
    ---
    Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
    
    Residual standard error: 0.2834 on 90 degrees of freedom
    Multiple R-squared:  0.02018,	Adjusted R-squared:  -0.04514 
    F-statistic: 0.309 on 6 and 90 DF,  p-value: 0.9308
    

    对模型结果进行分析

    一般线性模型(针对普通数值变量类型)

    我们知道回归分析就是建立一个一般的线性函数来拟合:y=a1x1+a2x2+a3*x3+b
    从上面summary的结果中,我们要得到几个重要的系数(coefficients):
    intercept -> b;
    age -> a1;
    写到这里,可能部分同学会不懂了,为什么后面的系数有这么多呢?理论上应该就b,a1,a2,a3四个系数啊!

    一般线性模型(针对因子变量类型)

    在R中,如果自变量是因子变量类型,lm()函数会自动处理成虚拟变量,也叫哑变量(dummy variable)。所以本例中的自变量gender和race在lm()函数中自动处理成了虚拟变量。
    其实虚拟变量就是将因子变量的几个不同的level处理成对应的01变量集合。比如:gender

    gendergenderFemalegenderMale
    female10
    male01

    从表中我们可以看见本来是因子变量的gender变量,如今映射成为两个01变量genderFemale和genderMale。
    同理:race

    raceraceAAraceAsianraceCaucraceHispanicraceOther
    AA10000
    Asian01000
    Cauc00100
    Hispanic00010
    Other01001

    从表中可见因子变量映射成为虚拟变量之后,一般因子变量中有几个level就会生成几个虚拟变量。
    那么问题来了,为什么从之前的summary的结果我们没有看到genderFemale和raceAA呢?
    答案是:为了避免多重共线性,对于level=n的分类变量只需选取其任意n-1个虚拟变量。因此需要选取一个reference level,gender中选取的是female,race中选的是AA,因此summary的结果就可以完全解释了。

    利用模型进行回归分析

    有时候我们会通过predict()函数对该模型在新的测试集中进行回归。但我们需要做一个矫正的时候,需要自己写一个线性模型进行回归分析。了解了因子变量和虚拟变量(dummy 变量)的关系之后,这并不难。代码如下:

    NCgenderD = nnet::class.ind(NC$gender)    #generate dummy variable
    NCgenderD = NCgenderD[,-1    ]#to avoid collinear,we drop the fisrt variate
    NCraceD = nnet::class.ind(NC$race)    #generate dummy variable
    NCraceD = NCraceD[,-1]     #to avoid collinear,we drop the fisrt variate
    NC_D = cbind(NC$age,NCgenderD,NCraceD)       # merge independent variables
    
    #Actually,I have lots of dependent variables to do correction(or regression)
    coef_lm = sapply(37:3232,function(i){
      NC.glm = lm(NC[,i] ~ age + gender + race, data = NC)
      return(NC.glm$coefficients)
    })
    coef_lm1 = coef_lm[-1,]#drop the intercept ,so as to do matrix multiplication
    RegressNC = sapply(37:3232,function(i){
      return(coef_lm[1,i]+(NC_D %*% coef_lm1[,i-36]))
    })
    

    总结

    在R语言实现一般线性模型是很方便的,本文通过手写带虚拟变量的线性回归函数更好地理解R语言中对因变量是因子变量的处理方式,即转化为虚拟变量(哑变量dummy variable)进行处理。我们在利用模型的coefficients进行回归的时候也需要注意一下。
    PS:为了理解这个虚拟变量,我找了很多资料,说起容易还是挺花时间的。差不多有大半天专门去找虚拟变量的相关知识,为了使得别人不再像我一样,所以又花了小半天时间写了这个markdown。

    展开全文
  • R语言glm拟合logistic回归模型实战:基于glm构建逻辑回归模型及模型系数统计显著性分析、每个预测因子对响应变量的贡献

    R语言glm拟合logistic回归模型实战:基于glm构建逻辑回归模型及模型系数统计显著性分析、每个预测因子对响应变量的贡献

    目录

    展开全文
  • 目录 模型与数据 估算值 预测误差脉冲响应 ...它们的主要目的是描述模型变量对一个或多个变量的冲击的演化。因此使它们成为评估经济时非常有用的工具。这篇文章介绍了VAR文献中常用的脉冲响应函数的概念和解...
  • R语言-变量的基本操作

    万次阅读 2016-05-17 22:30:31
    1.变量变换  as.array(x),as.data.frame(x),as.numeric(x),as.logical(x),as.complex(x),as.character(x),...转换变量类型;使用如下命令可得到全部列表,methods(as)  factor():将一个向量转化为一个因子 2....
  • 自从Sims(1980)发表开创性的论文以来,向量自回归模型已经成为宏观经济研究中的...为了理解这意味着什么,让我们首先来看一个简单的单变量(即仅一个因变量或内生变量)自回归(AR)模型,其形式为yt=a1yt−1+...
  • 今天主要来带大家重温一下数据管理,并提供了Stata和R语言的操作。数据管理的重要性一些初学者可能意识不到数据管理的重要性,认为数据到手,软件打开,就也可以死出模型,这种想法是大错特错的没有任何一份数据是能...
  • 在前文中,响应变量是一组类别变量(代表了样本的分组信息),此时随机森林用于执行监督分类的功能,模型的精度在于通过选定的预测变量组合将样本正确划分归类的概率。而当响应变量是一组连续变量时,可将回归森林用于...
  • 摘要信用评分卡模型在国外是一种成熟的预测方法,尤其在信用风险评估以及金融风险控制领域更是得到了比较广泛的使用,其原理是将模型变量WOE编码方式离散化之后运用logistic回归模型进行的一种二分类变量的广义线性...
  • R语言回归分析 回归分析可以说是统计学的核心,它其实是一个广义的概念,通指那些用一个或多个预测变量(也称自变量或解释变量)来预测响应变量(也称因变量、效标变量或结果变量)的方法。通常,回归分析可以用来...
  • 作者:黄天元,复旦大学...R语言中,能够构建统一的机器学习框架的包除了caret之外,还有一个更加精细的包叫做mlr。比起caret,它能够设置的参数更加多,能够定制更加细致的框架。但是也是因为如此,与caret相比它...
  • R语言回归分析 回归分析可以说是统计学的核心,它其实是一个广义的概念,通指那些用一个或多个预测变量(也称自变量或解释变量)来预测响应变量(也称因变量、效标变量或结果变量)的方法。通常,回归分析可以用来...
  • #glmnet包含有线性回归,逻辑回归,泊松计数模型,cox回归模型,多分类逻辑回归多响应线性回归 #阿法系数=0是岭回归,阿法系数=1,是lasso回归 ############################################################ data...
  • 当我们提到“线性”回归时,特指的是因变量(结果变量)为连续性变量,与自变量(预测变量)有线性关系,而对自变量(预测变量)并没有要求一定要是连续性变量。前面我们已经提到,当自变量是连续变量时,线性回归...
  • 变量与自变量之间的关系包括两种:自变量为数值类型和分类类型 请参考R项目客户回复预测与效益最大化   1、分别查看数据的属性为数值型和因子类型的属性 which(sapply(cup98, is.numeric)) > idx.num  ...
  • postdoc)于几年发表的一个R包-MUVR (Multivariate methods with Unbiased Variable selection in R),主要是为计算预测变量和相应变量之间的关系提供了一种新的算法,那么这里的响应变量既可以是连续变量用于回归...
  • 时间依存协变量,以及一些常见错误; 制作时间依存协变量的工具,更确切的说是如何编码相关数据集; 时间依存系数。 2 Time dependent covariates One of the strengths of the Cox model is its ability to ...
  • R语言逻辑回归

    2019-01-30 18:45:05
    逻辑回归是一种回归模型,其响应变量(因变量)具有分类值,如True/False或0/1。 它实际上是根据与预测变量相关的数学方程,来衡量二进制响应的概率作为响应变量的值。 逻辑回归的一般数学方程为 - y = 1/(1+e^-(a+...
  • 作者:黄天元,复旦大学博士在读,目前研究涉及文本挖掘、社交网络分析和机器学习等。希望与大家分享学习经验,推广并加深R语言在业界的应用。邮箱:huang.tian-yuan...
  • 作为一名R语言新手,第一步是要学会对数据进行一个调整与处理。现介绍几种常见对数据框架处理的函数: 使用R语言自带的heightweight数据集: library(gcookbook) height weight 可以看到五列代表每个人的...
  • R语言线性模型glm()logistic回归模型

    万次阅读 2016-10-17 18:10:58
    R语言广义线性模型glm()函数 glm(formula, family=family.generator, data,control = list(…)) formula数据关系,如y~x1+x2+x3 family:每一种响应分布(指数分布族)允许各种关联函数将均值和线性预测器关联...
  • R语言R语言逻辑回归

    千次阅读 2018-02-16 12:25:36
    # 逻辑回归是回归模型,其中响应变量(因变量)具有诸如True / False或0/1的分类值。 它实际上基于将其与预测变量相关的数学方程测量二元响应的概率作为响应变量的值。 # 逻辑回归的一般数学方程为 - # y = 1/(1+e^-...
  • 此函数选择模型以最小化AIC。...通常建议不要盲目地遵循逐步程序,而是要使用拟合统计(AIC,AICc,BIC)比较模型,或者根据生物学或科学上合理的可用变量建立模型。多元相关是研究潜在自变量之间关系的一种...
  • 两阶段最小二乘法(2SLS)回归拟合的线性模型是一种常用的工具变量估计方法。 本文的主要内容是将各种标准的回归诊断扩展到2SLS。 2SLS估计的回顾 我们需要2SLS回归的一些基本结果来开发诊断方法,因此我们在此...
  • R语言置换检验(permutation tests、响应变量是否独立于组、两个数值变量是独立的吗、两个分类变量是独立的吗)、置换检验的基本步骤、R语言自助法Bootstrapping、自助法计算单个统计量、统计向量的置信区间
  • R语言进行Box-Cox变换

    千次阅读 2021-02-13 17:34:24
    Box-Cox变换是Box和Cox在1964年提出的一种广义幂变换方法,是统计建模中常用的一种数据变换,用于连续的响应变量不满足正态分布的情况。Box-Cox变换的主要特点是引入一个参数,通过数据本身估计该参数进而确定应...
  • R语言mgcv包中的gam函数拟合广义加性模型(Generalized Additive Model)GAM(对非线性变量进行样条处理、计算RMSE、R方、调整R方、可视化模型预测值与真实值的曲线)
  • R语言建立VAR模型分析联合内生变量的动态关系

    万次阅读 多人点赞 2017-09-05 13:40:38
    VAR模型分析联合内生变量的动态关系 一、实验介绍 1.1 实验内容 VAR模型是向量自回归模型的简称,是基于数据的...本实验运用 R 语言来建立两变量的向量自回归模型,首先是检验两变量序列的平稳性,然后进行协整检验

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 57,556
精华内容 23,022
热门标签
关键字:

r语言响应变量