多元统计分析实验-线性回归

2023-10-31

1、实验目的

通过本实验使学生熟练运用python语言编写线性回归分析程序。

2、 实验内容

有以下两组数据,第一组数据为我国2004年31个地区城镇居民年人均可支配收入和年人均消费性支出数据,第二组数据为随机抽查的36个人的当前年薪y(美元)与开始年薪x1(美元)、工作时间x2(月)、先前工作经验x3(月)和受教育年限x4(年)。

图1城镇居民年人均可支配收入和年人均消费性支出数据

图2 抽样调查得到的36个人的数据资料

使用这两组数据完成以下内容。

1、用SPSS软件对第一组数据和第二组数据进行相关系数、回归方程建模;

2、根据SPSS软件结果,用python语言对第一组数据求可支配收入和消费性支出两个变量的相关系数;

3、根据SPSS软件结果,用python语言对第一组数据建立回归方程模型;

4、根据SPSS软件结果,用python语言对第二组数据求y和各x变量的相关系数;

5、根据SPSS软件结果,用python语言对第二组数据建立回归方程模型。

 

  1. 使用SPSS软件进行数据分析:

第一组数据分析

第二组数据分析

2、用python语言对第一组数据求可支配收入和消费性支出两个变量的相关系数;

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
from sklearn.metrics import r2_score
import statsmodels.api as sm

data = pd.read_csv("数据1.csv",encoding="gbk") #读入数据
data.head()

print(data.corr())

运行结果:

3、用python语言对第一组数据建立回归方程模型;

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
from sklearn.metrics import r2_score
import statsmodels.api as sm

data = pd.read_csv("数据1.csv",encoding="gbk") #读入数据
data.head()

X = data['可支配收入'].values.reshape(-1,1)         #自变量
Y = data['消费性支出'].values.reshape(-1,1)         #因变量

reg = LinearRegression()
reg.fit(X, Y)

a = reg.coef_                  #系数
b = reg.intercept_             #常量
print("回归系数为",a,"  常量为",b)
print("回归方程为: Y(消费性支出) = {:.5} * X(可支配收入) + {:.5}".format(a[0][0], b[0]))

运行结果:

4、用python语言对第二组数据求y和各x变量的相关系数

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
from sklearn.metrics import r2_score
import statsmodels.api as sm

data = pd.read_csv("数据2.csv",encoding="gbk")
data = data.drop(['Unnamed: 0'], axis=1)

print("当前年薪与开始年薪相关系数",data['当前年薪'].corr(data['开始年薪']))
print("当前年薪与工作时间相关系数",data['当前年薪'].corr(data['工作时间']))
print("当前年薪与先前工作经验相关系数",data['当前年薪'].corr(data['先前工作经验']))
print("当前年薪与受教育年限相关系数",data['当前年薪'].corr(data['受教育年限']))

运行结果:

5、用python语言对第二组数据建立回归方程模型。

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
from sklearn.metrics import r2_score
import statsmodels.api as sm

data2 = pd.read_csv("数据2.csv",encoding="gbk")
data2.head()
data2.drop(['Unnamed: 0'], axis=1)

Xs = data.drop(['当前年薪','性别'], axis=1)
Y = data['当前年薪'].values.reshape(-1,1)

reg2 = LinearRegression()
reg2.fit(Xs, Y)

#系数
a = reg2.coef_
#常量
b = reg2.intercept_

print("回归系数为",a,"  常量为",b)
print("线性回归方程为: Y(当前年薪) = {:.5} + {:.5}*开始年薪 + {:.5}*工作时间 + {:.5}*先前工作经验 + {:.5}*受教育年限".format(reg2.intercept_[0], reg2.coef_[0][0], reg2.coef_[0][1], reg2.coef_[0][2],reg2.coef_[0][3]))

运行结果:


参考:python线性回归(其中 statsmodels.api 里的summary()能输出模型评估,与spss的结果基本一致) 

           https://blog.csdn.net/hubingshabi/article/details/80172608

相关代码及数据:蓝奏云

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

多元统计分析实验-线性回归 的相关文章

  • 翠儿。让流永远运行

    我对 tweepy python 库比较陌生 我想确保我的流 python 脚本始终在远程服务器上运行 因此 如果有人能够分享如何实现这一目标的最佳实践 那就太好了 现在我正在这样做 if name main while True try
  • Django:如何测试“HttpResponsePermanentRedirect”

    我正在为我的 django 应用程序编写一些测试 在我看来 它使用 HttpResponseRedirect 重定向到其他一些网址 那么我该如何测试呢 姜戈TestCase类有一个方法assertRedirects https docs d
  • 从字符串到类型的词法转换

    最近 我尝试用Python存储和读取文件中的信息 遇到了一个小问题 我想从文本文件中读取类型信息 从 string 到 int 或 float 的类型转换非常有效 但从 string 到 type 的类型转换似乎是另一个问题 当然 我尝试了
  • 在python中将文本文件解析为列表

    我对 Python 完全陌生 我正在尝试读取包含单词和数字组合的 txt 文件 我可以很好地读取 txt 文件 但我正在努力将字符串转换为我可以使用的格式 import matplotlib pyplot as plt import num
  • 即使使用 .loc[row_indexer,col_indexer] = value 时也会设置 WithCopyWarning

    这是我的代码中得到的行之一SettingWithCopyWarning value1 Total Population value1 Total Population replace to replace value 4 然后我将其更改为
  • 如何限制Django CreateView中ForeignKey字段的选择?

    我有一个沿着这些思路的模型结构 models py class Foo models Model class Bar models Model foo models ForeignKey Foo class Baz models Model
  • 如何从 Dockerfile 安装 Python 3.7 和 Pip

    我正在尝试构建基于 Ubuntu 18 04 的自定义 Docker 映像 Ubuntu 预装了 Python 3 6 但我想 1 安装 Python 3 7 2 将其设置为默认 Python 版本 这样就可以使用python代替pytho
  • “char”/“character”类型的类型提示

    char 或 character 没有内置的原始类型 因此显然必须使用长度为 1 的字符串 但是为了暗示这一点并暗示它应该被视为一个字符 如何通过类型提示来实现这一点 grade chr A 一种方法可能是使用内置的 chr 函数来表示这一
  • Python Kivy - 在本机网络浏览器中打开 url 的应用程序

    我尝试制作一个简单的应用程序 在单击 Screen One 上的按钮后 在 Kivy 中打开一个网页 我使用了这个主题 Python 在应用程序中直接显示网络浏览器 iframe https stackoverflow com questi
  • 在径向(树)网络x图中查找末端节点(叶节点)

    给定下图 是否有一种方便的方法来仅获取末端节点 我所说的端节点是指那些具有一个连接边的到节点 我认为这些有时被称为叶节点 G nx DiGraph fromnodes 0 1 1 1 1 1 2 3 4 5 5 5 7 8 9 10 ton
  • 如何在python中检索aws批处理参数值?

    流程 Dynamo DB gt Lambda gt 批处理 如果将角色 arn 插入动态数据库 它是从 lambda 事件中检索的 然后使用submit job角色 arn 的 API 被传递为 parameters role arn ar
  • Matplotlib Scatter - ValueError:RGBA 序列的长度应为 3 或 4

    我正在尝试为我的功能绘制图表 但不断收到此错误 ValueError RGBA sequence should have length 3 or 4 每当我只有 6 种形状时 代码就可以完美运行 但现在我将其增加到 10 种 它就不起作用了
  • Airflow Python 单元测试?

    我想为我们的 DAG 添加一些单元测试 但找不到任何单元测试 有 DAG 单元测试框架吗 有一个端到端的测试框架存在 但我猜它已经死了 https issues apache org jira browse AIRFLOW 79 https
  • 导入错误:没有名为 google.auth 的模块

    当我尝试导入时firebase admin in python 2 7我收到错误 导入错误 没有名为 google auth 的模块 这是Docker文件 https github com ammaratef45 Attendance bl
  • 如何在与应用程序初始化文件不同的文件中迭代 api 路由

    我有一个 apiroutes py 文件 其中定义了许多路由 例如 api route api read methods GET api route api write methods POST 其中 api 是导入 from import
  • 查找给定节点的最高权重边

    我在 NetworkX 中有一个有向图 边缘的权重从 0 到 1 表示它们发生的概率 网络连通性非常高 所以我想修剪每个节点的边缘 只保留最高概率的节点 我不确定如何迭代每个节点并仅保留最高权重in edges在图中 有没有一个networ
  • 如何通过字符串匹配加速 pandas 行过滤?

    我经常需要过滤 pandas 数据框df by df df col name string value 并且我想加快行选择操作 有没有快速的方法可以做到这一点 例如 In 1 df mul df 3000 2000 3 reset inde
  • Python - 如何查询定义方法的类?

    我的问题有点类似于this one https stackoverflow com questions 5520580 how do you get all classes defined in a module but not impor
  • 如何禁止 celery 中的 pickle 序列化

    Celery 默认使用 pickle 作为任务的序列化方法 如中所述FAQ http ask github com celery faq html isn t using pickle a security concern 这代表一个安全漏
  • 异步和协程与任务队列

    我一直在阅读有关 python 3 中的 asyncio 模块的内容 以及更广泛地了解 python 中的协程的内容 但我不明白是什么让 asyncio 成为如此出色的工具 我的感觉是 你可以用协程做的所有事情 通过使用基于多处理模块 例如

随机推荐

  • Entity Framework Core系列教程-20-影子属性(Shadow Property)

    Entity Framework Core的影子属性 Shadow Property Entity Framework Core引入了一种新的属性类型 称为 影子 属性 该属性在EF 6 x中不存在 阴影属性是未在 NET实体类中直接定义的
  • 一、VMware及win10虚拟机的安装及环境配置

    一 安装VMware 1 1 下载VMware安装包 在此给大家一个迅雷的链接 点击下载 提取码 sp84 1 2 点击下一步 1 3 点击我接受 点击下一步 1 4 更换安装位置 点击下一步 1 5 点击下一步 1 6 点击下一步 1 7
  • 系统分析和设计方法之使用UML进行面向对象设计和建模

    使用UML完成系统建模是一件不错的事 不过在权衡进度 成本之后 大体上会知道能不能做 并不是对系统好的事情我们都要完成 重点在于资源约束 此处只是在资源约束满足时 应该怎么处理UML设计的通用流程 在实际工作场景中要根据要求做取舍 这是一篇
  • Linux入门:tar、gzip、bzip2以及zip的区别

    Linux入门 tar gzip bzip2以及zip的区别 tar命令 gzip以及bzip2命令 zip命令 区别 正文处理命令 tar命令 1 归档 archiving 就是将许多文件 或目录 打包压缩成一个文件 2 tar命令 压缩
  • flex 实现水平布局 三等分

    box display flex flex direction row justify content space between align items center 对应的html 如下 div class box div 已售 div
  • python菜鸟学习Day10(SMTP发送邮件及带附件及错误及发送短信)

    我们通过http协议可以访问网站 同样 我们通过SMTP协议可以发送邮件 python中的smtplib模块对SMTP进行了简单封装 可以实现源地址向目标地址发送邮件 方法 含义 SMTP host port local hostname
  • Vue项目打包并发布的完整步骤记录

    如何将Vue项目打包并发布 我这边是测试发布到本地 不过步骤是一样的 步骤如下 1 安装部署Nginx服务器 说明 Nginx engine x 是一个高性能的HTTP和反向代理服务器 也是一个IMAP POP3 SMTP服务器 同时 也是
  • HttpRunnerManager部署

    基于HttpRunner的接口自动化测试平台 HttpRunner djcelery and Django HttpRunner手册 http cn httprunner org git地址 httprunner HttpRunnerMan
  • Java空指针异常:java.lang.NullPointException原因

    Java空指针异常在工作中经常看到 之前我不是很懂这个概念以为如果某个对象没初始化就会报错结果不是 我通过debug打断点发现了具体原因和解决方法 原因 在excel上传解析的时候发现 如果没有初始化对象 里面就是null的 没有分配空间
  • Python爬虫自学要多久?

    时下python爬虫成为时下一种流行的编程语言 从零开始学python爬虫知识要多久了 所谓爬虫是指网络爬虫 web spider 如果把互联网比作一张巨大无比的蜘蛛网 那么web spider就是在这张网上爬来爬去的蜘蛛 而爬虫是通过py
  • 双向电平转换芯片TXB0304应用笔记

    TXB0304作为新一代自动识别方向的电平转换芯片 跟上一代同类器件TXB0104相比 具有更低的工作电压 0 9V 更高的转换速率 1 8V 3 3V间电平转换时最高速率140MBPS 以及更小的封装等优势 也正是因为需要在较低工作电压时
  • 自己动手写CSDN博客提取器源码分析之三:处理网页保存为pdf文件

    转载自 http blog csdn net w397090770 article details 7768129 下面我讲下处理pdf文件的 这里我用了PD4ML来处理的 原因有几个 1 它对CSS的支持做的很好 2 可以处理图片 很爽吧
  • python——获取当前文件路径

    1 os getcwd os getcwd 不需要参数 os getcwd 获取的是当前工作的路径 也就是脚本运行的地方 而不是脚本本身所存在的地方 代码 print os getcwd 测试结果 2 os path abspath os
  • npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! webpack_test@1.0.0 dev: `webpack` npm ERR! Exit s

    webpack打包时 报如图错误 问题产生的原因 webpack版本过高 导致npm i 时安装的依赖不再出现在node modules中 从而命令执行报错 解决方案1 运行npm i dev 安装一下开发环境下的依赖即可 随后再执行需要运
  • 云计算虚拟机技术-KVM安装

    云计算虚拟机技术 KVM安装 作者 尹正杰 版权声明 原创作品 谢绝转载 否则将追究法律责任 身为运维的小伙伴估计大家都清楚KVM 因为在CentOS里面KVM还算很折腾的一个软件 早期CentOS使用的xen虚拟化 后因收购KVM 于是就
  • 程序员工具网站(比较有意思)

    http www cxy521 com index html
  • html中中文显示乱码,网页中文显示乱码问题

    大家好 本人目前在学习ASP NET MVC5 出现了网页显示中文乱码的问题 诡异的是Home Index页面下的中文是可以正常显示的 其他页面的中文就不能正常显示了 不能正常显示中文的页面中 通过后台代码显示的字符串是正常的 直接卸载HT
  • Oracle数据库 Explain工具(语句执行索引使用情况)

    1 Explain工具的作用 Explain工具可以查看SQL语句的执行过程SQL索引的使用情况 2 Oracle数据库查看语句执行的情况语句 explain plan for select id from abc where a 1 an
  • 不确定性世界中的行为预测

    桔妹导读 自动驾驶系统中的行为预测模块主要负责预判其他交通参与者未来一段时间的行为 其困难主要源自现实世界和人类行为的高度不确定性 本文列举了现实环境中的不同场景 讨论了两种不同预测方法 即基于行为规划的预测和基于机器学习的预测 用于准确预
  • 多元统计分析实验-线性回归

    1 实验目的 通过本实验使学生熟练运用python语言编写线性回归分析程序 2 实验内容 有以下两组数据 第一组数据为我国2004年31个地区城镇居民年人均可支配收入和年人均消费性支出数据 第二组数据为随机抽查的36个人的当前年薪y 美元