Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

生信分析-关于Logrank p值 #26

Open
zemise opened this issue Jul 31, 2023 · 0 comments
Open

生信分析-关于Logrank p值 #26

zemise opened this issue Jul 31, 2023 · 0 comments

Comments

@zemise
Copy link
Owner

zemise commented Jul 31, 2023

一、Logrank p含义

logrankp值,也叫作“对数排名检验P值”,是生存分析中常用的一种统计方法,在比较两组数据生存曲线的差异时十分重要。它表示一个假设被拒绝的程度,一般情况下Logrank p值小于0.05时即拒绝原假设,认为两组数据的生存曲线存在显著差异。

二、Log-rank检验和Hazard Ratio鉴别

原数据 多组数据比较
Log-rank 可以非均匀
Hazard Ratio 均匀

三、Log-rank检验和Wilcoxon检验

大多数软件中都是和log-rank检验一起出现的方法——wilcoxon检验。两者权重的不同,导致了log-rank检验与Wilcoxon检验有一定的倾向性。

  • 若log-rank检验有意义而Wilcoxon检验无意义,表明可能远期差异较大,早期则不一定,有可能差异不大。
  • 若log-rank检验无意义而Wilcoxon检验有意义,表明早期生存差别较大,远期生存差异不大。

三、SPSS进行Log-rank检验

1. 打开SPSS软件,导入需要进行检验的数据文件;
2. 进入“分析”菜单,选择“生存分析”子菜单,然后选择“生存时间数据”选项;
3. 在弹出的窗口中选择需要进行比较的两组数据,确认后继续;
4. 设置“时间变量”和“状态变量”,然后选择需要进行的分析类型(比如对数排名检验),最后点击确定;
5. 在分析结果中可以查看各项统计指标,其中包括logrankp值。同时还可以生成生存曲线等可视化结果。

四、Python进行Log-rank检验

通过读取包含生存时间和事件(死亡、失踪等)信息的CSV文件,将数据分为两组,然后使用lifelines库的logrank_test函数进行比较,最终输出logrankp值。

import pandas as pd
from lifelines.statistics import logrank_test

data = pd.read_csv('survival_data.csv')
group1 = data[data['group']==1]['survival_time']
censor1 = data[data['group']==1]['event']
group2 = data[data['group']==2]['survival_time']
censor2 = data[data['group']==2]['event']

results = logrank_test(group1, group2, censor1, censor2)

print('logrankp值为:', results.p_value)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant