Python贝叶斯回归分析住房负担能力数据集

news2024/11/16 7:35:29

 我想研究如何使用pymc3在贝叶斯框架内进行线性回归。根据从数据中学到的知识进行推断。 最近我们被客户要求撰写关于贝叶斯回归的研究报告,包括一些图形和统计输出。 

 视频:线性回归中的贝叶斯推断与R语言预测工人工资数据案例

贝叶斯推断线性回归与R语言预测工人工资数据

,时长09:58

 贝叶斯规则是什么? 

本质上,我们必须将已经知道的知识与世界上的事实相结合。

这里有一个例子。

假设存在这种罕见疾病,每10,000人中就有1人随机感染这种疾病。换句话说,有0.01%的机会患上这种疾病。 幸运的是,有一项测试可以99%的正确识别出患有这种疾病的人,如果没有这种疾病,它也可以正确地说出您99%没有患这种疾病。您参加了测试,结果为阳性。您有多少几率实际患上该病?

好吧,让我们从逻辑上考虑一下。我们知道,每10,000人中就有1人患此病。假设有10,000人。他们中的9,999人没有疾病,但其中1%的人会得到阳性结果。因此,即使只有1人实际患有这种疾病,也有约101人获得了阳性结果。这意味着即使结果为阳性,您也只有101分的几率实际患上该病(或大约1%的几率)。

 数学描述  :

看起来很简单。实际上,这很简单。该公式仅需要一些概率分布的知识。但是实际上,右边的分母通常意味着我们将要计算很多真正的计算重积分。因此,贝叶斯统计被放弃了很多年。从某种意义上讲,它自然而然地脱离了概率论。如果我们只有擅长计算大量数字的东西,那么这类问题就可以解决。

计算机确实非常快地进行计算贝叶斯回归。

代码

这是进行贝叶斯回归所需的知识。通常,我们想到这样的回归:

e是正态分布的误差。 

 因此,我们假设:

与先验:

因此,如果我们拥有X和Y的数据,则可以进行贝叶斯线性回归。 

 代码 

我们要使用的数据集是《  住房调查: 2013年住房负担能力数据 》数据集。 

我们感兴趣的是住房负担如何随着年龄而变化。AGE1包含户主的年龄。BURDEN是一个变量,它告诉我们住房费用相对于收入有多大。为简单起见,我们仅关注这两个变量。我们想知道的是,随着年龄的增长,住房负担会变得更容易吗?特别是,我们想知道斜率系数是否为负,并且由于我们处于贝叶斯框架中,因此该概率为负的概率是多少?

因此,我们将导入所需的库和数据。进行一些数据清理。


df=pd.read_csv('2013n.txt',sep=',')
df=df[df['BURDEN']>0]
df=df[df['AGE1']>0]

现在,让我们构建上面讨论的模型。让我们做一个散点图,看看数据是什么样子。

plt.scatter(df['AGE1'],df['BURDEN'])
plt.show()

结果如下:

住房负担很容易超过收入的10倍。

这是构建和运行模型的代码:


pm.traceplot(trace)
plt.show()

看起来与我们上面的模型完全一样,不同之处在于我们还有一个正态分布的截距beta。现在我们的模型已经训练好了,我们可以继续做一些推论工作。

完成运行后,会看到类似以下内容:

可以看到,我们有斜率和截距的后验分布以及回归的标准偏差。

住房负担会随着年龄的增长而减少吗?

是的。随着人们的建立,他们的住房成本将相对于收入下降。这将等于年龄变量的负斜率系数。运行以下代码,则可以找出斜率系数为负的确切概率。

print(np.mean([1 if obj<0 else 0 for obj in trace['x']]))

 该系数为负的概率约为13.8%。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/83300.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

猿如意---Visual Studio手把手教学安装和下载.

亲自为大家示范如何使用猿如意以及在猿如意当中下载&#xff0c;安装和使用python3.10版本&#xff0c;让大家喜欢上这款好用的app—猿如意。 文章目录前言一、手把手教你猿如意的安装、下载二、手把手教你Visual Studio的安装、下载1.找到我需要的工具2.我需要的工具的安装、下…

最新Crack:foxit pdf sdk 8.4.1_win_java

Foxit pdf sdk一个功能强大、易于使用的核心 API&#xff0c;用于呈现、查看、注释、签名、保护和管理 PDF 中的表单。 Foxit pdf sdk开发人员的最佳工具 快速整合 C、C#、C、Python 和 Java 中功能强大且易于使用的核心 API。系统要求&#xff1a;Windows XP、Vista、7、8 和…

【云原生 | Kubernetes 实战】12、K8s 四层代理 Service 入门到企业实战应用(上)

目录 一、Service 四层代理基本介绍 1.1 四层负载均衡 Service&#xff1a;概念、原理解读 1 为什么要有Service&#xff1f; 2 Service 概述 3 Service 工作原理 4 kubernetes 集群中有三类 IP 地址 二、创建 Service 资源 2.1 Service 的四种类型 2.2 Service 的端口…

k8s编程operator实战之云编码平台——①架构设计

文章目录1、想法来源2、初步设想2.1 通过反向代理的方式访问后端Pod3、架构设计3.1 技术栈3.2 架构设计k8s编程operator系列&#xff1a;k8s编程operator——(1) client-go基础部分k8s编程operator——(2) client-go中的informerk8s编程operator——(3) 自定义资源CRDk8s编程op…

SpringSecurity管理接口权限

使用SpringSecurity管理具体接口访问权限。 需要先有授权服务器和资源服务器 Springboot利用Security做OAuth2授权验证_LO嘉嘉VE的博客-CSDN博客 Springboot利用Security做OAuth2资源服务器_LO嘉嘉VE的博客-CSDN博客 配置接口具体访问权限再有以上两个的基础上就比较简单了…

antd-vue 累加表单编辑和删除(完善版)

一、业务场景&#xff1a; 最近在使用Antd-Vue组件库的时候&#xff0c;发现在累加表单 时没有直接可以用的&#xff0c;必须自己在官网上手动合并几个才能实现&#xff0c;为了大家后面遇到和我一样的问题&#xff0c;给大家分享一下 二、具体实现步骤&#xff1a; <temp…

新一代最强开源UI自动化测试神器Playwright(Java版)环境搭建

Playwright 是专门为满足端到端测试的需要而创建的。Playwright 支持所有现代渲染引擎&#xff0c;包括 Chromium、WebKit 和 Firefox。在 Windows、Linux 和 macOS 上进行本地测试或在 CI 上进行测试&#xff0c;无外设或带本机移动仿真。 一.安装 在JAVA中&#xff0c;使用…

嵌入式技术之IAP,自从有了它老板再也不担心我的代码了!(上)

1.惨痛的教训 那是一个严寒的冬日&#xff0c;客户在现场使用我们公司新研发的设备&#xff0c;设备最初设计可以允许最多连接20个温湿度传感器&#xff0c;但是由于现场空间非常大&#xff0c;客户要求连接30个温湿度传感器。这个需求修改非常简单&#xff0c;只用修改程序中…

帮公司面试了个要25K的测试,我问了他这些问题...

深耕IT行业多年&#xff0c;我们发现&#xff0c;对于一个程序员而言&#xff0c;能去到一线互联网公司&#xff0c;会给我们以后的发展带来多大的影响。 很多人想说&#xff0c;这个我也知道&#xff0c;但是进大厂实在是太难了&#xff0c;简历投出去基本石沉大海&#xff0…

spring security安全认证登录全流程分析

文章目录前言一、登录时序图二、配置与代码1.引入库2.代码文件参考文档前言 本文章主要从spring security安全认证登录内部调用流程来流程分析登录过程。 一、登录时序图 时序原图 二、配置与代码 1.引入库 pom.xml&#xff1a; <!-- Spring框架基本的核心工具 -->&…

截至到2022年12月12日,知网最新改进 YOLO 核心论文合集 | 22篇创新点速览

截至到2022年12月12日&#xff0c;知网最新改进YOLO核心论文合集 本篇博文仅供学习交流&#xff0c;不对文章质量进行评价&#xff0c;请尊重每一位同学的科研成果&#x1f91d;。 文章目录截至到2022年12月12日&#xff0c;知网最新改进YOLO核心论文合集引言&#x1f4a1;0. 什…

Vue.use()的用法详解

目录 &#x1f53d; 前言 &#x1f53d; 官方解释 &#x1f53d; Demo演示 &#x1f388; Object对象 &#x1f449; 创建项目 &#x1f449; 创建组件 &#x1f449; 使用组件 &#x1f388; function函数 &#x1f449; 创建函数 &#x1f449; 引入 &#x1f449…

机器人与视觉,基于坐标系的运动偏移

基于可移动坐标系的机器人坐标偏移 在生产过程中&#xff0c;当需要建造多个坐标系的时候&#xff0c;我们可以采用基于坐标系偏移&#xff0c;可以实现使用机器人坐标系直接完成多个坐标系的联动。 由于实现多个坐标系的联动情况&#xff0c;那么通常都会伴随着坐标系的移动和…

力扣1781. 子字符串的美丽值之和(cpp实现+解析)

文章目录1781.子字符串的美丽值之和完整代码1781.子字符串的美丽值之和 力扣传送门&#xff1a; https://leetcode.cn/problems/sum-of-beauty-of-all-substrings/description/ 题目描述&#xff1a; 一个字符串的 美丽值 定义为&#xff1a;出现频率最高字符与出现频率最低字…

CMake中add_compile_options/target_compile_options的使用

CMake中的add_compile_options命令用于向源文件的编译添加选项&#xff0c;其格式如下&#xff1a; add_compile_options(<option> ...) 将选项添加到COMPILE_OPTIONS目录属性。从当前目录及以下目录编译target时&#xff0c;将使用这些选项。 add_compile_option…

48-90-Scala-函数式编程基础特性等

48-Scala-函数式编程&#xff1a; 函数式编程 1、完全面向对象编程 2、函数式编程&#xff0c;万物皆函数&#xff0c;程序语句的集合&#xff0c;称为函数。类中的函数称之方法。函数无重载重写概念&#xff0c;方法可以。函数可以嵌套 3、函数的定义def test3(s:String):…

电子书资源:分享10个非常好用的免费书籍资源网站

❤️作者主页&#xff1a;IT技术分享社区 ❤️作者简介&#xff1a;大家好,我是IT技术分享社区的博主&#xff0c;从事C#、Java开发九年&#xff0c;对数据库、C#、Java、前端、运维、电脑技巧等经验丰富。 ❤️个人荣誉&#xff1a; 数据库领域优质创作者&#x1f3c6;&#x…

Qt扫盲-QCheckBox 理论总结

QCheckBox 理论总结1. 简述2. 分组3. 状态&信号4. 外观&快捷键1. 简述 QCheckBox是一个选项按钮&#xff0c;可以 选中 或 未选中。复选框通常用于表示应用程序中可以启用或禁用的功能&#xff0c;而不会影响其他功能。可以实现不同类型的行为。一般是很多个联用的。 …

Cookie、Session、Token比较

1 Cookie cookie 指的就是浏览器里面能永久存储的一种数据&#xff0c;仅仅是浏览器实现的一种数据存储功能。 cookie由服务器生成&#xff0c;发送给浏览器&#xff0c;浏览器把cookie以 key-value 形式保存到某个目录下的文本文件内&#xff0c;下一次请求同一网站时会把该…

基于适应度-距离平衡的人工生态系统优化算法解决瞬态稳定性约束最优潮流问题(Matlab代码实现)

&#x1f468;‍&#x1f393;个人主页&#xff1a;研学社的博客 &#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜…