主页

国庆画个国旗

使用R,参考这篇文章。 star <- function(posXY, size=1, theta=0, color="yellow") { alpha <- 2 * pi / 5 R <- size r <- sin(pi/10) * R / sin(7*pi/10) pointpos <- matrix(0, nrow=10, ncol=2) Beta <- (pi/10+theta) + (0:4) * alpha pointpos[seq(1,9,2),] <- cbind(cos(Beta)*R+posXY[1], sin(Beta)*R+posXY[2]) Beta <- (3*pi/10+theta) + (...

阅读更多

weka

Weka是由新西兰怀卡托大学用Java开发的数据挖掘软件,Weka是Waikato Environment for Knowledge Analysis的缩写。Weka限制在GNU通用官方证书的条件下发布,它可以运行在包括Linux、Windows、OS X等操作系统平台上。 IBM上有一篇介绍weka的文章,写的非常清晰。 在weka的主页中可以非常容易的下载到weka。在这里将使用windows版本来说明一个实例。 先将数据处理为weka能识别的格式,参考 @RELATION house @ATTRIBUTE houseSize NUMERIC @ATTRIBUTE lotSize NUMERIC @ATTRIBUTE bedrooms NUMERIC @ATTRIB...

阅读更多

SV分析

分析SV的软件,被多次提到的有crest、breakdancer、lumpy。 这里使用lumpy进行分析。 lumpy安装 lumpy的安装比较简单 git clone --recursive https://github.com/arq5x/lumpy-sv.git cd lumpy-sv make 使用 lumpy的原始输入是bam文件,但是需要注意的是bam文件必须有RG信息。一般的,在bwa比对时使用-R参数,或者比对后使用gatk AddOrReplaceReadGroups来加入RG信息。 先得到比对到不同地方的reads samtools view -bh -F 1294 sample.bam \ | samtools sort -@ 8 - -o sampl...

阅读更多

CNV分析

试用了几个分析CNV的软件。 VarScan2 VarScan这个做somatic变异检测的软件也加入了对CNV分析的支持。 samtools mpileup -q 1 -f ref.fa normal.bam tumor.bam | \ java -jar VarScan.jar copynumber prefix --mpileup 1 --data-ratio 1 如果normal和tumor的数据差异较大,记得调整–data-ratio,默认是1,可选范围为0-1。 以上这一步会生成prefix.copynumber文件,接下来进行分析 java -jar VarScan.jar copyCaller prefix.copynumber --output-file o...

阅读更多

ncbi的genotyping tool

之前做HBV的分型的时候,发现ncbi有这个分型的工具,genotyping tool。原理是使用blast将query序列与设定好的blast库进行blast获得最相似的序列。 目前可以做分型的病毒有HIV-1,HIV-2,HTLV-1,HTLV-2,HBV,HCV,PV。 使用起来也比较简单,例如,随便复制一段HBV序列, TTTTTCTTGTTGACAAGAATCCTCACAATACCGCAGAGTCTAGACTCGTGGTGGACTTCTCTCAATTTTC TAGGGGGAACTACCGTGTGTCTTGGCCAAAATTCGCAGTCCCCAACCTCCAATCACTCACCAACCTCTTG TCCTCCAACTTGTCCTGGTTATCGCTGGATGTGTCTGC...

阅读更多

去除bam文件中的clipped reads

bam文件里面会存在soft clipped 和 hard clipped等结果,有时我们只需要完美匹配结果,可以对bam文件进行处理。(当然,也可以在比对时就设定相关参数,比如bowtie2的end-to-end) 去除soft clipped 和 hard clipped 的方法来自biostar。 samtools view sample.bam | awk '$6 ~ /H|S/{print $1}' | sort -k1,1 | uniq > sample.names.txt samtools view sample.bam | sort -k1,1 > sample.tmp.sam samtools view -H sample.bam > sampl...

阅读更多

ML 100 Days (4-6)

跟着大佬学习一下机器学习100-Days-Of-ML。 Day 4 逻辑回归 第4天简单的一张图说明逻辑回归 Day5 逻辑回归 逻辑回归(Logistic Regression)是一种用于解决二分类(0 or 1)问题的机器学习方法,用于估计某种事物的可能性。比如某用户购买某商品的可能性,某病人患有某种疾病的可能性,以及某广告被用户点击的可能性等。 注意,这里用的是“可能性”,而非数学上的“概率”,logisitc回归的结果并非数学定义中的概率值,不可以直接当做概率值来用。该结果往往用于和其他特征值加权求和,而非直接相乘。(credit to 知乎) Day6 逻辑回归 这一天的内容是使用逻辑回归的方法,从数据中预测会购买豪华SUV的潜在客户。 使用的数据在这里。 预处理 ...

阅读更多

WordWriter,一个用来填docx模板的模块

说明 这个模块的主要目的是用于填充docx模板,原理是在模板中保留对应的tag,然后通过模块去把tag替换掉。理论上,替换内容的格式会完全跟随tag的格式,因此格式的调整只需要在模板中进行。 模块基于pandas和python-docx。 需要安装 pip install pandas pip install python-docx 模块下载: python2 python3 模板说明 只支持docx格式的word文档,不支持doc格式word文档。不支持文本框及图形中的文本替换。 表格的插入 需要插入表格,首先需要在模板中定义一个列数一致的表格,并且将tag放置在需要填充的第一行第一列(不包含标题),当然,如果第一列是固定的字段,也可以将tag放置在第一行第二列中(类推...

阅读更多