
基于R和Python 如何使用多项式和有序逻辑回归
我们中的大多数对于回归的知识是有限的。其中,线性和逻辑回归是我们最喜欢的一种。作为一个有趣的事实,回归具有扩展的能力来处理不同类型的变量。你是否知道,回归规定处理多层次的变量吗?我肯定,你没有,我也没有。直到我被推到探索这方面的回归。
对于多层次的变量,很多机器学习算法可以替你做工作。例如,朴素贝叶斯,决策树,随机森林等的初学者,这些算法可能有些难以理解。但是,如果你很好的理解逻辑回归,掌握这一新的回归应该是很容易的!
在这篇文章中,我已经解释了使用多项式和序数回归的方法。此外,为了实际的目的,我们已经证明这个算法在一个循序渐进的R潮流中。
注:这篇文章是最适合具有领先经验的逻辑回归的R用户。然而,如果你用Python,你仍然可以得到一个全面的了解这个回归的方法。
时间序列预测全攻略(附带Python代码)
多元回归是什么?
多远回归是一种线性回归分析,因变量是名义上的两个或两个以上的水平。它用来描述数据,并解释一个依赖名义变量和一个或多个联系水平(时间间隔或比例规模)的独立变量之间的关系。你可以理解的名义变量,一个没有内在顺序的变量。
例如:森林类型:”常绿阔叶林””落叶林”,”雨林”。正如你看到的,他们之间有一个内在的秩序,但是每一类都代表一个独特的分类。换句话说,多项式回归是回归分析逻辑的延伸,分析了独立二进制。
多元回归是如何运作的?
多元逻辑回归评估了每个虚拟变量的二元逻辑回归模型。其结果是M-1二元逻辑回归模型。每一个模型都传达了,在比较参考的类别中,该类别成功概率的影响。
每个模型都有自身的截距和回归系数——预测可以影响每个不同类别。让我们将这一部分与我们的经典之作进行比较——线性和逻辑回归。
标准的线性回归需要变量成为连续水平(时间间隔或比率)的规模。然而,逻辑回归通过假设变量是一个随机事件,跳跃了差距。因变量描述该随机事件与密度函数的结果(一个累积概率从0到1的功能)。
统计人员认为,一个事件的概率小于0.5时则会发生,概率大于0.5时则是相反的情况。
现在我们知道MLR延伸了二元逻辑模型给一个众多类别的模型(因变量)。然而,它有一个限制。这个属于结果的类别并不假设任何顺序。例如,如果我们有N个有相等概率的类别。在现实中,我们遇到了一个自然顺序的类别的问题。
那么,当我们的因变量有一个自然顺序的类别时,我们该做什么?这种情况下,有序回归可以拯救我们。
有序回归是什么?
有序回归(也称序逻辑回归)是二项逻辑回归的又一延伸。有序回归是用来预测变量与”有序”多个类别和独立变量。换句话说,它是用来促进一个或多个独立变量的相互作用的依赖变量(具有多个有序的水平)。
例如:让我们假设一项已经完成的调查。我们问了调查者一个在同意与不同意之间的问题。回馈的收集并没有帮助我们很好的概括。后来,我们增加了我们的反应机制例如:非常不同意,不同意,同意,非常不同意。
这有助于我们观察自然秩序的种类。因为我们的回归模型是现实的,我们必须感谢这个顺序不是生来就有的,正如MLR的情况,有序逻辑回归解决了这种情况。有序意味着类别的顺序。
实例:
在我们演算这些算法之前,让我们确保我们已经获得了一个具体的理解,使用下面的案例:
案例1:(多项式回归)
高中生可以用多项式LOGIT模型完成程序建模选择。程序选择可以是一般程序,职业程序和学术程序。他们的选择可以用他们的写作成绩和他们的社会经济地位来建模。
基于各种属性,如社会地位,渠道类型,学生所得到的奖项和荣誉,性别,经济地位以及他们在一个给定的题目中他们能够写的或者读的有多好,程序类型的选择可以预测。多层次的程序选择(无序)是因变量。本案适用于多元逻辑回归技术。
案例2(有序回归)
一项研究着眼于是否一些因素会影响到申请研究生学校的决定。高校学生被问到他们是不可能,有点可能,或者很有可能申请研究生学院。因此,我们的结果变量有三类,即,不可能,有点可能和非常有可能。
父母对子女教育情况的数据,制度类(私营或国营),收集当前GPA。研究人员有理由相信,这三个点之间的”距离”是不平等的。例如,”不可能”和”有点可能”之间的”距离”可能比”有点可能”和”有可能”的距离短。在这种情况下,我们将使用有序回归。
R下的多元逻辑回归(MLR)
读取文件
现在我们将用2个独立变量进行多项式回归
解释
1、模型执行输入显示了一些迭代的历史,包括最终的像179.981726的负对数。这个值乘以两个模型最终显示残余偏差。
2、摘要输出有一个板块的系数和另一个板块的标准差。每个区块有一行对应于一个模型方程的值。在系数的区块,我们可以看到,第一行是比较prog=general 与我们的基础 prog=academic,并且第二行 prog=vocation与我们的基础prog=academic.
3、在一般程序与0.0579的学术计划,一个写日志记录的单位的增长会降低。
4、在职业计划与0.1136的学术课程,一个写日志记录的单位的概率增长会降低。
5、如果从ses=low到ses=high, 一般程序的日志概率比学术程序降低1.163.
6、另一方面,如果从ses=low到ses=middle,一般程序的日志概率比学术计划中的减少0.5332。
7、如果从ses=low到ses=high,职业计划的日志概率比学术计划减少0.983.
8、如果从ses=low 到ses=middle,职业计划的日志概率比学术计划增加0.291.
现在我们将计算模型中的变量Z值与P值。
P值告诉我们,ses变量并没有限制。我们现在将探索整个数据集,并分析我们是否可以删除不添加到模型性能的任何变量。
在移除ID和程序变量之后,让我们在整个数据集中建立一个数据多项式模型。
让我们检查一下现在的值。
一旦我们建立了这个模型,我们就用它来预测。让我们用不同的排列组合创建一个新的数据集。
现在,我们计算出预测值。参数 type=probs, 指定我们对于概率的兴趣。为了直观的理解去绘制预测的概率,我们增加了预测概率值的数据。
现在,我们要计算每个水平的ses的平均概率。
我使用从reshape 2 package 中的Melt()功能。它带着每一个行都是独特的身份变量的组合,融合数据。
> library("reshape2")
## Warning: package 'reshape2' was built under R version 3.1.3
> bpp2 = melt (bpp,id.vars=c("female", "ses","schtyp", "read","write","math","science","socst","honors", "awards"),value.name="probablity")
> head(bpp2)
现在我们将探讨因变量与自变量的分布,并绘制图形。使用ggplot()功能。在ggplot,这个函数的第一个参数是数据值绘制。第二部分在( aes())绑定变量X和Y轴。我们告知使用geom_line()绘图功能画出一条线。我们通过绘制不同的颜色区分不同学校的类型。
到这里,我们已经学会了使用多元回归,如上面提到的,如果你有很好的逻辑回归的知识,解释这个结果并不太困难。现在让我们开始理解R中的有序回归。
R中的有序逻辑回归
下面是R中的OLR的执行步骤
加载库
让我们快速了解数据
该数据有一个被成为相关变量的应用。它有3个层次,即不可能,有点可能,很可能。编码在1,2 和3. 3最高,1最低。这种情况是最好的顺序回归的使用。因为存在有序类别。Pared(0/1)是指父母至少有一个人具有硕士研究生学历;Public(0/1)指本科院校的类型。
建立这个模型,我们将使用polR命令来估计一个有序逻辑回归。然后,我们将指定Hess=TRUE让模型输入显示所观察到的优化信息矩阵,这是曾经用来获得标准误差的方式。
我们通常看到的回归输出系数表包括各系数的值,标准差,T值,对两截距的估计,剩余偏差和AIC。AIC信息准则。越小越好。
现在我们要计算一些重要的指标如P值,CI,比值率。
解释
1、家长的教育每增加一个单位,从0(低)到1(高),极有可能申请比有点可能或不可能申请的可能性大2.85.
2、很有可能或有点可能申请比不可能申请的可能性大2.85倍。
3、从GPA考虑,当一个学生的GPA移动一个单位,不可能申请的概率是有点可能或很可能(从低到中等分类,或从低到高等分类)申请的概率乘以1.85。
现在让哦我们试着加强这个模型,以获得更好的预测评估。
让我们在这里添加交互项
结束语
我很喜欢写这篇文章。我建议你注意模型的解释。编码是比较容易的,但是除非你知道是怎么产生的,否则,你的学习是不完整的。
有许多重要的因素,比如,AIC,残差值来确定模型的有效性。如果你还想了解他们,我会建议你去刷逻辑回归的基本。这应该有助于你更好的理解这个概念。
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
Excel 导入数据含缺失值?详解 dropna 函数的功能与实战应用 在用 Python(如 pandas 库)处理 Excel 数据时,“缺失值” 是高频 ...
2025-09-16深入解析卡方检验与 t 检验:差异、适用场景与实践应用 在数据分析与统计学领域,假设检验是验证研究假设、判断数据差异是否 “ ...
2025-09-16CDA 数据分析师:掌控表格结构数据全功能周期的专业操盘手 表格结构数据(以 “行 - 列” 存储的结构化数据,如 Excel 表、数据 ...
2025-09-16MySQL 执行计划中 rows 数量的准确性解析:原理、影响因素与优化 在 MySQL SQL 调优中,EXPLAIN执行计划是核心工具,而其中的row ...
2025-09-15解析 Python 中 Response 对象的 text 与 content:区别、场景与实践指南 在 Python 进行 HTTP 网络请求开发时(如使用requests ...
2025-09-15CDA 数据分析师:激活表格结构数据价值的核心操盘手 表格结构数据(如 Excel 表格、数据库表)是企业最基础、最核心的数据形态 ...
2025-09-15Python HTTP 请求工具对比:urllib.request 与 requests 的核心差异与选择指南 在 Python 处理 HTTP 请求(如接口调用、数据爬取 ...
2025-09-12解决 pd.read_csv 读取长浮点数据的科学计数法问题 为帮助 Python 数据从业者解决pd.read_csv读取长浮点数据时的科学计数法问题 ...
2025-09-12CDA 数据分析师:业务数据分析步骤的落地者与价值优化者 业务数据分析是企业解决日常运营问题、提升执行效率的核心手段,其价值 ...
2025-09-12用 SQL 验证业务逻辑:从规则拆解到数据把关的实战指南 在业务系统落地过程中,“业务逻辑” 是连接 “需求设计” 与 “用户体验 ...
2025-09-11塔吉特百货孕妇营销案例:数据驱动下的精准零售革命与启示 在零售行业 “流量红利见顶” 的当下,精准营销成为企业突围的核心方 ...
2025-09-11CDA 数据分析师与战略 / 业务数据分析:概念辨析与协同价值 在数据驱动决策的体系中,“战略数据分析”“业务数据分析” 是企业 ...
2025-09-11Excel 数据聚类分析:从操作实践到业务价值挖掘 在数据分析场景中,聚类分析作为 “无监督分组” 的核心工具,能从杂乱数据中挖 ...
2025-09-10统计模型的核心目的:从数据解读到决策支撑的价值导向 统计模型作为数据分析的核心工具,并非简单的 “公式堆砌”,而是围绕特定 ...
2025-09-10CDA 数据分析师:商业数据分析实践的落地者与价值创造者 商业数据分析的价值,最终要在 “实践” 中体现 —— 脱离业务场景的分 ...
2025-09-10机器学习解决实际问题的核心关键:从业务到落地的全流程解析 在人工智能技术落地的浪潮中,机器学习作为核心工具,已广泛应用于 ...
2025-09-09SPSS 编码状态区域中 Unicode 的功能与价值解析 在 SPSS(Statistical Product and Service Solutions,统计产品与服务解决方案 ...
2025-09-09CDA 数据分析师:驾驭商业数据分析流程的核心力量 在商业决策从 “经验驱动” 向 “数据驱动” 转型的过程中,商业数据分析总体 ...
2025-09-09R 语言:数据科学与科研领域的核心工具及优势解析 一、引言 在数据驱动决策的时代,无论是科研人员验证实验假设(如前文中的 T ...
2025-09-08T 检验在假设检验中的应用与实践 一、引言 在科研数据分析、医学实验验证、经济指标对比等领域,常常需要判断 “样本间的差异是 ...
2025-09-08