尔云间生信代码|基于lasso回归模型方法筛选特征基因

LASSO是由1996年Robert Tibshirani首次提出,全称Least absolute shrinkage and selection operator(最小绝对收缩和选择算子)。该方法是一种压缩估计。它通过构造一个惩罚函数得到一个较为精炼的模型,使得它压缩一些回归系数,即强制系数绝对值之和小于某个固定值;同时设定一些回归系数为零。因此保留了子集收缩的优点,是一种处理具有复共线性数据的有偏估计。
LASSO也是一种广泛应用于Cox比例风险回归模型的流行方法,用于高维数据的生存分析。LASSO 回归的特点是在拟合广义线性模型的同时进行变量筛选和复杂度调整。因此,不论目标因变量是连续的,还是二元或者多元离散的,都可以用 LASSO 回归建模然后预测。这里的变量筛选是指不把所有的变量都放入模型中进行拟合,而是有选择的把变量放入模型从而得到更好的性能参数。复杂度调整是指通过一系列参数控制模型的复杂度,从而避免过度拟合。对于线性模型来说,复杂度与模型的变量数有直接关系,变量数越多,模型复杂度就越高。更多的变量在拟合时往往可以给出一个看似更好的模型,但是同时也面临过度拟合的危险。此时如果用全新的数据去验证模型,通常效果很差。一般来说,变量数大于数据点数量很多,或者某一个离散变量有太多独特值时,都有可能过度拟合。
在目前的研究中,可使用LASSO Cox回归模型检测与癌症表型显著相关的枢纽基因。因此本代码基于肿瘤样本的基因表达谱并结合不同样本分组,利用LASSO(最小绝对收缩和选择算子)算法,得到与表型密切相关的特征基因。只需要输入基因表达矩阵及样本的表型信息,将自行构造惩罚函数得到精炼的LASSO回归模型以获取特征基因。同时结合样本分组绘制特征基因间相关性分析图。
使用方法:
Rscript LASSO.R -Eset= -sampleLabels=
参数说明:
USAGE:LASSO.R -Eset=<Eset> -sampleLabels=<sampleLabels>PARAMETERS:-Eset the gene expression matrix ,gene as row,sample as column ,input txt format using tabs as delimiters-sampleLabels the sample classification labels ,the first column is sample name which is consistent with Eset column in order,the second column is the classification labels, input txt format using tabs as delimiters.Note: the sample size should be smaller than the number of genes操作步骤:1、打开命令行界面,输入“Rscript LASSO.R”调阅帮助文档,确定该程序所需的输入文件。2、用户根据帮助文档中的参数说明内容,对参数进行设置。这里,必须输入参数有2个,分别是-Eset,表示基因表达矩阵文件,以基因为行,样本为列,保存为txt文件,使用制表符作为分隔符,注意样本量应大于基因数量。-sampleLabels表示样本表型信息,包含两列,第一列为样本名称,必须包含于或等于基因表达矩阵的样本,第二列为对应的表型,使用制表符作为分隔符输入txt格式。3、完成参数提交后,按下回车键,整个程序即正式开始进入执行。程序执行完毕后,界面会显示”Program execution is completed"结束语。
结果展示:
共输出3个PDF,2个txt文件。
1、Rplots.pdf

lasso分析对应的系数剖面图,根据最小cp值获取对应最佳步数进行lasso分析。横坐标的step值与lasso.pdf中lasso系数谱中竖线的标号对应。
2、lasso.pdf

lasso系数谱: 根据最佳步数,筛选特征值,纳入特征基因。竖线对应于lasso中迭代的次数,对应的系数值不为0的自变量即为选入的,竖线的标号与lasso分析对应的系数剖面图中的步数相对应。
3、lasso_gene.txt

通过LASSO系数谱获取cp值最小时筛选得到的特征基因,及基因对应的相关系数。
4、lasso_gene_matrix.txt

为lasso分析出的特征基因表达谱文件。第一行为样本名称,接下来的行数为筛选到的特征基因及原始表达谱中的表达量。制表符作为分隔符。
5、lasso_gene_correlation.pdf

利用lasso筛选的特征基因表达谱文件,进行基因间相关性分析。颜色越蓝,正相关性越强。颜色越红,负相关性越强。
特别说明:本代码经申请软件著作权,仅转让使用权,不转让所有权
如需代码及示例数据等文件,请扫码聊天框回复 “代码”领取!

写在文末:
如果您近期想做生信方面的文章而苦于没有思路,或者不知道如何来入手生信分析,或者兑具体的某一个图有作图需求,都可以扫码咨询小云,我们有专业的技术团队,生信热点思路设计、生信分析、热点方向生信挖掘等,如有需要,可扫码下方二维码了解详情:
