主页

2023总结

2023年的年终总结。 2023年,工作上,又双叒叕跳槽了。老实说,还是一如既往的觉得这个行业不太行,想看看能不能自己搞点小本生意。但是每次回到家,都累摊在那,不想想啥方案。想的方案又觉得成功不了,主要是觉得没有本钱可以亏。 个人生活上依旧一塌糊涂,目标没有达成。今年玩了塞尔达王泪,还是熟悉的味道,任天堂YYDS。没有玩博德之门3,等着以后继续。去年定下的购车计划,最终买了毛豆歪(是的,也是一个事与愿违)。 个人的成长上,没有长进。有车之后漫无目的四处兜风,最无聊的是为了看一个商场是不是真的不限时长免费停车,从天河区开了一个多小时车去白云区。回程的时候发现了一条风景宜人的路,从村道一直开到堤坝路,又从堤坝路一直开到山道,又从山道开到车很少的省道,刚好又是一场雨之后,非常舒服。 ...

阅读更多

complexHeatmap 瀑布图

使用maftools来绘制瀑布图,很多内容没办法自定义,这里用complexHeatmap来画图。 还是先使用maftools来读入maf文件,这样需要调整的格式比较少,我把UTR和同义突变都纳入统计,实际不用 library(ComplexHeatmap) library(maftools) library(dplyr) library(tidyr) # 读入数据 clin <- "clinical.txt" # 需要统计的突变类型 nonSyn_list <- c( 'Frame_Shift_Del', 'Missense_Mutation', 'Nonsense_Mutation', 'In_Frame_Del', 'Frame_Shift_I...

阅读更多

ggplot2绘制三角热图

目标是使用ggplot2绘制出类似maftools中somaticInteractions()模块产生的三角热图。 maftools产出如下: maftools这副三角热图用于展示共突变基因的相关度。首先构建出一个文本文件,格式类似下面这个表格,这里使用的是fisher精确检验,绘制热图时,主要使用的是P值,但同时会根据OR值是否大于1来判断是正相关还是负相关。 x y value OR PMS2 TP53 0.0036828676433501074 0.2 PMS2 TET2 0.4199168731045784 0.6547619047619048 PMS2 SH2B3 0.5570301431667071 1.7105263157894737 PMS2 SETD2 0.5...

阅读更多

fisher精确检验

OR值计算 目标是不使用非python自带的模块完成fisher精确检验的计算。包括OR值、P值以及置信区间。   GroupA GroupB StatusA a b StatusB c d fisher精确检验是小样本下对二联表进行计算。其中odds ratio即OR值的计算方式比较简单 \[OR = ad / bc\] 由于4个值中可能会存在0,导致计算所得的OR值为0或者无限大,这时可以进行haldane-anscombe校正,即将所有值都加上0.5 def cal_fishe...

阅读更多

WordWriter,python自动化Word报告

介绍 这个脚本主要靠python-docx实现。同时使用pandas来处理输入的表格。基于python3。使用复杂度没有docxtpl那么高。解决了之前版本标签跨run后无法识别的痛点。 需要安装 pip install python-docx pip install pandas pip install WordWriter 脚本地址: WordWriter 脚本原理 使用python-docx,通过导入模板docx文件,寻找模板文件中预先保留的tag,对tag进行替换,最后重新保存docx文件达到自动输出报告的效果。支持对模板中的tag进行处理,替换后的字符串格式会完全跟随模板中对应tag的格式。仅支持docx格式的word文档,不支持doc格式word文档。 目前...

阅读更多

maftools瀑布图上侧柱形图改为Multi Hits

maftools的瀑布图的上、左、右三个柱形图(条形图)都可以拿自己的数据进行修改,对于左右两侧的条形图,只需要基因可以匹配得上即可;对于上侧的柱形图,只需要样本可以匹配的上即可。参考这篇文章。 以TCGA-LAML数据为例,首先读入maftools内置的TCGA数据 library(maftools) laml.maf <- system.file("extdata", "tcga_laml.maf.gz", package = "maftools") laml.clin <- system.file('extdata', "tcga_laml_annot.tsv", package = "maftools") laml <- read.maf(maf = l...

阅读更多

python几种统计方法

记录一下几种统计学方法的python写法 fisher精确检验 odds ratio:两个事件的相关度,大于1为正相关,小于1为负相关,等于1为不相关; p-value:置信度 置信区间:odds ratio在此区间内置信度为p-value import pandas as pd from scipy.stats import fisher_exact from scipy.stats import norm import math def fisher_own(dataframe, groupAname, groupBname, yates=True): groupA_muts = dataframe.loc["突变", groupAname] group...

阅读更多

爬取oncokb

爬虫务必设置一个大的时间间隔。 确认爬取路线: 1,从网站中获取所有基因的列表; 2,爬取基因页面; 3,解析基因页面并获得位点列表; 4,爬取位点页面; 5,解析并整理所有内容。 基因列表 oncokb在这个页面中提供了基因列表的下载。 爬取基因页面 oncokb的页面URL结构非常整洁,照旧使用playwright框架来爬取,由于每个页面下可能有多个标签,标签的内容需要点击标签才会加载出来,因此这里每个标签都尝试点击一次并保存一次。 from playwright.sync_api import Playwright, sync_playwright, expect import time import random def run(playwright: P...

阅读更多