https://www.cnblogs.com/BinbinChen/p/3416972.html

生存分析,维基上的解释是: 生存分析(Survival analysis)是指根据试验或调查得到的数据对生物或人的生存时间进行分析和推断,研究生存时间和结局与众多影响因素间关系及其程度大小的方法,也称生存率分析存活率分析

生存分析的方法也可以用在其他的商业应用中,比如顾客流失,等模型。大概可以从两个方向上去考虑生存分析的研究对象

1. 估计(各期的)生存函数,某个人病人可以活多久(e.g. 5年)的概率。常用的是Kanplan-Meier 估计。

2. 研究影响生存期长短的因素及关系,这个关系有两种,

  a) 哪些素是最主要的因素,侧重qulitative,可以用决策树,随机森林等模型

  b)各因素的相关系的数量表示,侧重quantitative。可以用cox,等等模型。

一、关于删失数据(censored data)

删失数据是生存分析的一个最主要的特征。删失数据不是缺失数据,它是可以观察到的,但是数据常常由于各种原因而被截断。主要有三种

  • 右删失:这个是最常见的类型。比如,一项肺癌的研究,某些人活了6年之后,他移民了,那么这个数据就是删失的,信息是,这个人至少活了6年。
  • 左删失:
  • 区间删失:这个也比较常见。比如一项关于艾滋病的研究,某个患者是大概2012.6-2013.1得的艾滋病,因为他没半年会做一次检查。

由于删失数据的存在导致传统的一些方便需要作一些调整,比如后面给要提到的利用极大似然估计(MLE)去估计参数时,会稍有不同。

二、描述生存时间分布规律的函数

  • 生存率:又称为生存概率或生存函数,它表示一个病人的生存时间长于时间t的概率,用S(t) 表示:    s(t)=P(T³t)。生存率是一条下降的曲线。
  • 概率密度函数:它表示死亡速率的大小。如以t为横坐,f(t) 为纵坐标作出的曲线称为密度曲线,由曲线上可看出不同时间的死亡速率及死亡高峰时间。纵坐标越大,其死亡速率越高,如曲线呈现单调下降,则死亡速率越来越小,如呈现峰值,则为死亡高峰。
  • 危险函数:称为生存到时间t的病人在时间t的瞬时死亡率或条件死亡速率或年龄别死亡速率。当用t作横坐标,h(t)为纵坐标所绘的曲线,如递增,则表示条件死亡速率随时间而增加,如平行于横轴,则表示没有随时间而加速(或减少)死亡的情况。风险函数的不同情况:
    • 常数,    如:死于飞机失事。
    • 下降,    如:急性损伤。
    • 上升,    如:持续接触危险因素。
    • 澡盆样,如:人的一生。

二、非参数法估计生存函数

估计生存分析函数是生存分析一块很重要的部分,它可以给人一些基本的直观的信息。比如说,某个患者是采用化疗,还是手术会活的长久, 某个新药对治疗某种疾病是否有显著的效果。最常用的方法是Kanplan-Meier。非参数的方法的优势在于,只需要生存时间和数据是否是删失,就可以给人一个直观的图形,从图形也可以看到患者能活多久的概率是多少。一下是用R做的一个乳腺癌的案例:

生存模型(Survival Model)介绍的更多相关文章

  1. 生存分析(survival analysis)

    一.生存分析(survival analysis)的定义 生存分析:对一个或多个非负随机变量进行统计推断,研究生存现象和响应时间数据及其统计规律的一门学科. 生存分析:既考虑结果又考虑生存时间的一种统 ...

  2. ThinkPHP 的模型使用详细介绍--模型的核心(七)

    原文:ThinkPHP 的模型使用详细介绍--模型的核心(七) 注意:本节是ThinkPhp框架对数据操作的核心处理部分 大家还是在这里看清楚可以将其剪切放到代码编辑器中查看 本章节给大家着重介绍模型 ...

  3. Scikit-learn:模型评估Model evaluation

    http://blog.csdn.net/pipisorry/article/details/52250760 模型评估Model evaluation: quantifying the qualit ...

  4. 使用 Jackson 树模型(tree model) API 处理 JSON

    http://blog.csdn.net/gao1440156051/article/details/54091702 http://blog.csdn.net/u010003835/article/ ...

  5. Django模型(model)系统

    Object Relational Mapping(ORM) ORM介绍 ORM概念 对象关系映射(Object Relational Mapping,简称ORM)模式是一种为了解决面向对象与关系数据 ...

  6. C++11 并发指南七(C++11 内存模型一:介绍)

    第六章主要介绍了 C++11 中的原子类型及其相关的API,原子类型的大多数 API 都需要程序员提供一个 std::memory_order(可译为内存序,访存顺序) 的枚举类型值作为参数,比如:a ...

  7. thinkphp模型层Model、Logic、Service讲解

    thinkphp模型层Model.Logic.Service讲解 时间:2014-08-24 15:54:56   编辑:一切随缘   文章来源:php教程网 已阅读:771 次       js特效 ...

  8. 盒子模型(Box Model)

    盒子模型(Box Model) ■ 盒子模型——概念 在网页设计中常用的属性名:内容(content),填充(padding),边框(border),边界(margin),CSS 盒子模式都具备这些属 ...

  9. css盒模型(Box Model)

    所有HTML元素可以看作盒子,在CSS中,"box model"这一术语是用来设计和布局时使用. CSS盒模型本质上是一个盒子,封装周围的HTML元素,它包括:边距,边框,填充,和 ...

随机推荐

  1. 深度学习框架PyTorch一书的学习-第六章-实战指南

    参考:https://github.com/chenyuntc/pytorch-book/tree/v1.0/chapter6-实战指南 希望大家直接到上面的网址去查看代码,下面是本人的笔记 将上面地 ...

  2. linux命令之df

    功能:查看文件系统的磁盘空间使用情况 常用选项: -a 包含虚拟文件系统 -h 可易读单位显示 -i 显示 inode 信息而非块使用量 -k 1K 块的数量 -t 只显示指定文件系统为指定类型的信息 ...

  3. LCA--倍增法

    一般来求LCA有3种方法 1.倍增 2.RMQ+欧拉序 3.tarjan(离线) 本文将倍增求lca 这个算法是很常见很常见的 也是较好理解的 (我也不明白假期学长讲的时候我为什么死活都不明白 自闭q ...

  4. Spark运行模式:cluster与client

    When run SparkSubmit --class [mainClass], SparkSubmit will call a childMainClass which is 1. client ...

  5. 关于学习JAVA第二章的心得

    这章主要讲了JAVA的变量,数据类型和运算符的使用方法及规则. 其实在大一的时候接触过一点C和C++的知识所以对变量,数据类型,运算符还是有一定了解的. 变量其实就是存储数据的空间.我们每次使用某一种 ...

  6. 通过 JS 脚本去除csdn广告

    1. chorme 浏览器 1.1 通过书签方式添加 新建书签: 在网址一栏中输入: javascript: $(function () { $('aside .csdn-tracking-stati ...

  7. ASP.NET Core MVC之ViewComponents(视图组件)知多少?

    前言 大概一个来星期未更新博客了,久违了各位,关于SQL Server性能优化会和ASP.NET Core MVC穿插来讲,如果你希望我分享哪些内容可以在评论下方提出来,我会筛选并看看技术文档来对你的 ...

  8. git 分支管理规范

    保证master分支永远处于可部署的状态.禁止自接提交代码到master分支 开发分支基于master分支创建,命名规范如下: 如果是功能需求,分支命名为feature/xxx,xxx要具有描述性 如 ...

  9. Java基础之数据比较Integer、Short、int、short

    基础很重要,基础很重要,基础很重要.重要的事情说三遍,. 今天聊一聊Java的数据比较,这个范围比较大,基础类型的比较.引用类型的比较. 前提: 1.Java和c#都提供自动装箱和自动拆箱操作,何为自 ...

  10. 八、xadmin自定义菜单栏顺序

    xadmin默认是读取注册的app和所有注册到xadmin的mode来生成对应的菜单. nav_menu[app_key] = { 'title': app_title, 'menus': [mode ...