R和Python市场篮分析算法及行为分析模型

🎯要点

  1. 行为数据分析:🎯线性统计研究生学业表现:🖊绘制测试分数配对图 | 🖊构建简单线性回归模型,拟合数据 | 🖊构建多线性回归,三维可视化数据拟合模型 | 🖊测试多重共线性 | 🖊二次模型改善拟合度。🎯二项式逻辑回归分析销售人员升职与否:🖊绘制业绩配对图 | 🖊业绩对数赔率建模。🎯名义类别多项逻辑回归选择商业保险:🖊绘制保险类别配对图 | 🖊分层二项式建模产品选择性。🎯有序类别结比例赔率逻辑回归分析运动员纪律和表现:🖊 依据表现结果生成比例优势模型 | 🖊计算运动员表现观察值与相关类别可能性 | 🖊检验比例优势假设.。🎯单一事件生存模型分析职工情绪推理在职与否:🖊考克斯比例风险回归模型 | 🖊舍恩菲尔德检验比例风险假设。
  2. 市场​数据​分析​:🎯图形和表格数据:🖊简单回归模型分析销售力度数据,多线性回归模型分析销售薪资经验及技术水平 | 🖊决策树分类模型分析人员流失,K最近邻模型分析贷款审批和朴素贝叶斯模型分析信用评级 | 🖊神经网络和逻辑回归模型预测人员流失 | 🖊市场篮分析模型物品采购关系模式。🎯算法实例:🖊 先验算法、频繁模式增长算法、怡亨算法、分类和回归树算法。
  3. 商业利润分析:🎯商品选择:🖊 不同口味食物预测选择因果行为分析 | 🖊兴趣效应建模分析押金类型影响酒店预订率,从行为科学和商业角度寻找其他影响因素 | 🖊商业销售使用鲁宾分类法建模处理客户缺失数据 | 🖊统计模型模拟异常影响因子分析食品制作和上市不确定因素 | 🖊商业利润行为逻辑测试方式一:简单样本量分配和功效分析 | 🖊商业利润行为逻辑测试方式二:分层随机化增强测试功效分析 | 🖊商业利润行为逻辑测试方式三:层次线性模型 | 🖊商业营销行为适度分析:分割数据为观测数据和测试数据,交互非线性关系。

🍇R 考克斯比例风险模型

它适用于定量预测变量和分类变量。此外,考克斯回归模型扩展了生存分析方法,可以同时评估多种风险因素对生存时间的影响。

在临床研究中,在许多情况下,几个已知量(称为协变量)可能会影响患者的预后。例如,假设比较两组患者:具有特定基因型的患者和不具有特定基因型的患者。 如果其中一组还包含老年个体,则存活率的任何差异都可能归因于基因型或年龄或两者兼而有之。 因此,在调查与任何一种因素相关的生存时,通常需要根据其他因素的影响进行调整。

统计模型是一种常用的工具,可以同时分析多个因素的生存情况。此外,统计模型提供了每个因素的效应大小。

考克斯比例风险模型的目的是同时评估多个因素对生存的影响。 换句话说,它使我们能够检查特定因素如何影响特定时间点特定事件(例如感染、死亡)的发生率。 该比率通常称为危险率。 在生存分析文献中,预测变量(或因素)通常被称为协变量。

考克斯模型用h(t)表示的风险函数来表示。简而言之,危险函数可以解释为在时间 t 时死亡的风险。可以估计如下:
h ( t ) = h 0 ( t ) × exp ⁡ ( b 1 x 1 + b 2 x 2 + … + b p x p ) h(t)=h_0(t) \times \exp \left(b_1 x_1+b_2 x_2+\ldots+b_p x_p\right) h(t)=h0(t)×exp(b1x1+b2x2++bpxp)
其中,

  • t t t 表示时间
  • h ( t ) h(t) h(t) 是由一组 p p p 协变量 ( x 1 , x 2 , … , x p ) \left(x_1, x_2, \ldots, x_p\right) (x1,x2,,xp) 确定的风险函数
  • 系数( b 1 , b 2 , … , b p b_1, b_2, \ldots, b_p b1,b2,,bp )衡量协变量的影响(即效应大小)
  • h 0 h_0 h0 项称为基线危险。如果所有 x i x_i xi 都等于 0(数量 exp(0) 等于 1),则它对应于危险值。 h ( t ) h ( t ) h(t) 中的“ t t t”提醒我们危险可能会随时间而变化。

考克斯模型可以写为变量 x i x_i xi​ 风险对数的多元线性回归,其中基线风险是随时间变化的“截距”项。

数量 exp ⁡ ( b i ) \exp \left(b_i\right) exp(bi) 称为风险比 (HR)。 b i b_i bi 的值大于零,或者相当于风险比大于 1,表示随着 i th  i^{\text {th }} ith  协变量值的增加,事件风险增加,从而生存时间延长减少。换句话说,风险比高于 1 表示协变量与事件概率正相关,因此与生存长度负相关。

  • H R = 1 : H R=1: HR=1: 无影响
  • H R < 1 HR <1 HR<1:减少危险
  • H R > 1 H R>1 HR>1:危险增加

考虑两个患者 k k k k ′ k^{\prime} k,其 x x x 值不同。相应的危险函数可以简单写成如下

  • 患者 k k k 的危险函数:
    h k ( t ) = h 0 ( t ) e ∑ i = 1 n β x h_k(t)=h_0(t) e^{\sum_{i=1}^n \beta x} hk(t)=h0(t)ei=1nβx

  • 患者 k ′ k^{\prime} k 的危险函数:

h k ′ ( t ) = h 0 ( t ) e ∑ i = 1 n β x ′ h_{k^{\prime}}(t)=h_0(t) e^{\sum_{i=1}^n \beta x^{\prime}} hk(t)=h0(t)ei=1nβx

  • 这两名患者的风险比 [ h k ( t ) h k ′ ( t ) = h 0 ( t ) e ∑ i − 1 n β z h 0 ( t ) e ∑ − 1 n β z ′ = ∑ n l − 1 β z ∑ ∑ i − 1 n β z ′ ] \left[\frac{h_k(t)}{h_{k^{\prime}}(t)}=\frac{h_0(t) e^{\sum_{i-1 }^n \beta z}}{h_0(t) e^{\sum_{-1}^n \beta z^{\prime}}}=\frac{\sum^{\frac{n}{l- 1}} \beta z}{\sum_{\sum^{i-1}}^n \beta z^{\prime}}\right] [hk(t)hk(t)=h0(t)e1nβzh0(t)ei1nβz=i1nβzl1nβz] 与时间 t 无关。

换句话说,如果一个人在某个初始时间点的死亡风险是另一个人的两倍,那么在以后的所有时间点,死亡风险仍然是另一个人的两倍。

代码实现:

library("survival")
library("survminer")

函数 coxph()[生存包中]可用于计算 R 中的 Cox 比例风险回归模型。 简化格式如下:

coxph(formula, data, method)

我们将使用生存 R 包中的肺癌数据。

data("lung")
head(lung)

计算模型

我们首先计算所有这些变量的单变量 Cox 分析;然后我们将使用两个变量进行多元 Cox 分析,以描述这些因素如何共同影响生存。

res.cox <- coxph(Surv(time, status) ~ sex, data = lung)
res.cox
summary(res.cox)

要将单变量 coxph 函数一次应用于多个协变量,请输入以下内容:

covariates <- c("age", "sex",  "ph.karno", "ph.ecog", "wt.loss")
univ_formulas <- sapply(covariates,
                        function(x) as.formula(paste('Surv(time, status)~', x)))
                        
univ_models <- lapply( univ_formulas, function(x){coxph(x, data = lung)})
# Extract data 
univ_results <- lapply(univ_models,
                       function(x){ 
                          x <- summary(x)
                          p.value<-signif(x$wald["pvalue"], digits=2)
                          wald.test<-signif(x$wald["test"], digits=2)
                          beta<-signif(x$coef[1], digits=2);#coeficient beta
                          HR <-signif(x$coef[2], digits=2);#exp(beta)
                          HR.confint.lower <- signif(x$conf.int[,"lower .95"], 2)
                          HR.confint.upper <- signif(x$conf.int[,"upper .95"],2)
                          HR <- paste0(HR, " (", 
                                       HR.confint.lower, "-", HR.confint.upper, ")")
                          res<-c(beta, HR, wald.test, p.value)
                          names(res)<-c("beta", "HR (95% CI for HR)", "wald.test", 
                                        "p.value")
                          return(res)
                          #return(exp(cbind(coef(x),confint(x))))
                         })
res <- t(as.data.frame(univ_results, check.names = FALSE))
as.data.frame(res)

多元Cox回归分析

res.cox <- coxph(Surv(time, status) ~ age + sex + ph.ecog, data =  lung)
summary(res.cox)

可视化

# Plot the baseline survival function
ggsurvplot(survfit(res.cox), color = "#2E9FDF",
           ggtheme = theme_minimal())
# Create the new data  
sex_df <- with(lung,
               data.frame(sex = c(1, 2), 
                          age = rep(mean(age, na.rm = TRUE), 2),
                          ph.ecog = c(1, 1)
                          )
               )
sex_df

参阅一:计算思维

参阅二:亚图跨际

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【源码解析】深入Pandas的心脏DataFrame 含十大功能、源码实现与编程知识点

作者介绍&#xff1a;10年大厂数据\经营分析经验&#xff0c;现任大厂数据部门负责人。 会一些的技术&#xff1a;数据分析、算法、SQL、大数据相关、python 欢迎加入社区&#xff1a;码上找工作 作者专栏每日更新&#xff1a; LeetCode解锁1000题: 打怪升级之旅 python数据分析…

Arcpy开发记录

一.GDB数据库相关 1.单独的shape更新时&#xff0c;不会有限制&#xff0c;数据会自动截取 2.在GDB下&#xff0c;使用UpdateCursor更新字段时&#xff0c;填入的数据长度必须与字段长度要求一致&#xff0c;否则报错&#xff1a; 二.arcpy.da.UpdateCursor相关 updateRow后关…

【无线通信开发应用】nRF905数据手册深度解读

希望通过两个stm32、两个nRF905无线通信模块、串口来实现两机通信。具体功能为&#xff1a; 板子A、B分别包含一个stm32单片机和一个nRF905无线模块&#xff0c;欲实现板子A、B之间的通信。 其中&#xff0c;PC端串口助手可向板子A的stm32发送字符‘A’控制板子B上的LED亮灯&am…

Linux migrate_type初步探索

1、基础知识 我们都知道Linux内存组织管理结构架构&#xff0c;顶层是struct pglist_data&#xff0c;然后再到struct zone&#xff0c;最后是struct page。大概的管理结构是这样的&#xff1a; 根据物理内存的地址范围可划分不同的zone&#xff0c;每个zone里的内存由buddy…

【redis】Redis数据类型(三)List类型

目录 List类型介绍特点 List数据结构附&#xff1a;3.2以前的版本(介绍一下压缩列表和双向链表)压缩列表ZipList双向链表LinkedList 常用命令lpush示例 lpushx示例 rpush示例 rpushx示例 LPOP示例 RPOP示例 BLPOP非阻塞行为阻塞行为相同的 key 被多个客户端同时阻塞在 MULTI/EX…

【类型商店】字符字符串(上)

啊&#xff0c;哈喽&#xff0c;小伙伴们大家好。我是#Y清墨&#xff0c;今天呐&#xff0c;我要介绍的是字符与字符串。 导语 在我之前发的[算法材料包]C数字拆分里有提及到.size()和length()和strlen(),想看更多内容请别划走&#xff01; 一.论字符 &#xff08;1&#xff…

口袋实验室--使用AD2高效调试IIC、UART、SPI等低速接口

目录 1. 简介 2. 调试过程 2.1 简要步骤 2.2 Si5338 寄存器配置流程 2.3 AD2的基本配置 2.4 检查Si5338状态 2.5 配置Si5338寄存器 2.6 保存Si5338寄存器 3. 总结 1. 简介 使用Digilent Analog Discovery 2进行调试不仅提升了工作效率&#xff0c;而且极大地简化了常…

Golang | Leetcode Golang题解之第60题排列序列

题目&#xff1a; 题解&#xff1a; func getPermutation(n int, k int) string {factorial : make([]int, n)factorial[0] 1for i : 1; i < n; i {factorial[i] factorial[i - 1] * i}k--ans : ""valid : make([]int, n 1)for i : 0; i < len(valid); i {…

2024年第二十一届 五一杯 (C题)大学生数学建模挑战赛|数学建模完整代码+建模过程全解全析

当大家面临着复杂的数学建模问题时&#xff0c;你是否曾经感到茫然无措&#xff1f;作为2022年美国大学生数学建模比赛的O奖得主&#xff0c;我为大家提供了一套优秀的解题思路&#xff0c;让你轻松应对各种难题。 CS团队倾注了大量时间和心血&#xff0c;深入挖掘解决方案。通…

pyinstaller打包pytorch和transformers程序

记录使用pyinstaller打包含有pytorch和transformers库的程序时遇到的问题和解决方法。 环境和版本信息 操作系统&#xff1a;Windows 11 Python&#xff1a;3.10.12 pyinstaller&#xff1a;5.13.0 torch&#xff1a;2.2.2 transformers&#xff1a;4.40.1 打包过程和问…

【进收藏夹吃灰系列】算法学习指南

文章目录 [toc]分治算法 个人主页&#xff1a;丷从心 系列专栏&#xff1a;进收藏夹吃灰系列 分治算法 博客标题博客url【分治算法】【Python实现】Hanoi塔问题https://blog.csdn.net/from__2024_04_11/article/details/138093461?spm1001.2014.3001.5502

Mysql-黑马

Mysql-黑马 编写规范&#xff1a;## 一级1. 二级三级 1.Mysql概述 数据库概念mysql数据仓库 cmd启动和停止 net start mysql180 net stop mysql180备注&#xff1a;其中的mysql180是服务名 客户端连接 远程连接数据仓库 -h 主机号 -P端口号 mysql [-h 127.0.0.1] [-P 33…

CSDN如何在个人主页开启自定义模块|微信公众号

目前只有下面三种身份才具有这个功能。 VIP博客专家企业博客 栏目内容不知道怎么写HTML的&#xff0c;可以联系我帮你添加

15.Blender Eevee和Cycles渲染引擎对比

初步介绍 Eevee是实时渲染的引擎&#xff0c;会省略一些解算方式&#xff0c;尤其对光线和阴影 Cycles会考虑这些因素&#xff0c;所以会对光线和阴影的表达更加真实&#xff0c;有一个实时光线追踪的功能 Cycles渲染完之后&#xff0c;每移动一次画面&#xff0c;都会重新渲染…

【工程记录】Python爬虫入门记录(Requests BeautifulSoup)

目录 写在前面1. 环境配置2. 获取网页数据3. 解析网页数据4. 提取所需数据4.1 简单提取4.2 多级索引提取 5. 常见问题 写在前面 仅作个人学习与记录用。主要整理使用Requests和BeautifulSoup库的简单爬虫方法。在进行数据爬取时&#xff0c;请确保遵守相关法律法规和网站的服务…

git revert的使用

由于某种原因我们需要撤销掉之前某一次的修改&#xff0c;但是这个修改已经提交&#xff0c;并且后面又经历了好几轮的提交。可能如下这种情况&#xff1a; 那么此时使用git revert再合适不过啦。git revert ${commit_id}就可以将指定commit id的修改撤销&#xff0c;然后提交…

Java从菜鸟到高手①

目录 1.数据类型 2.定义变量 2.1.编码方式 2.2.布尔型变量boolean 2.3.隐式类型转化和强制类型转化 2.4类型提升 3.字符串类型 4.运算符 4.1.取余 4.2. &#xff0c;- 4.3逻辑运算&& || &#xff01; 4.4.位运算 4.5.条件运算符 1.数据类型 Java中&#…

Linux:使用匿名管道对进程池的模拟实现

目录 一、Makefile 二、processpool.cc 2.1创建通信管道和子进程 2.2控制子进程 2.3回收进程 三、task.hpp 四、完整代码 接下来我们将模拟实现一个进程池&#xff0c;进程池广泛应用与各个领域和方向&#xff0c;比如我们打开电脑后同时打开很多个进程&#xff08;也就是软…

SpringBoot对接前端传递的base64编码的图片信息,转成图片以Get请求进行浏览器文件下载,不下载到本地。

一、问题描述 1.1需求描述。 前端将浏览器展示的图片以base64编码的形式传递给后端&#xff0c;以此实现文件下载的功能&#xff0c;在浏览器弹出文件下载框。效果如下 1.2实现思路 将前端传递的base64进行解码&#xff0c;设置响应头返回响应体&#xff0c;代码如下。 pu…

如何安全的使用密码登录账号(在不知道密码的情况下)

首先&#xff0c;需要用到的这个工具&#xff1a; 度娘网盘 提取码&#xff1a;qwu2 蓝奏云 提取码&#xff1a;2r1z 1、打开工具&#xff0c;进入账号密码模块&#xff0c;如图 2、看到鼠标移动到密码那一栏有提示&#xff0c;按住Ctrl或者Alt点击或者双击就能复制内容&…