![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
生物信息
主要详细介绍C语言htslib库的使用,以及python pysam包的使用,尽可能让新手快速上手生信开发以及增强对生物知识的了解,文章持续更新中。
优惠券已抵扣
余额抵扣
还需支付
¥19.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
晏九
这个作者很懒,什么都没留下…
展开
-
htslib/sam.h操作bam文件
以下的b类型是bam1_t *b;1. 取tag例如MI:MI:Z:1000004/A(pair reads可以区分pair AB或BA,1000004 ID可以知道是否是一条reads)uint8_t *s = bam_aux_get(b,"MI");char *t = (char *)s; //可以这样转换成//获取Aint len = strlen(t);t[len-1];//获取1000004int num = 0;for(int i = 0; s...原创 2021-11-18 17:55:04 · 362 阅读 · 0 评论 -
pyrange
官方文档:https://pyranges.readthedocs.io/en/latest/autoapi/pyranges/index.html持续更新中pyrange结构可以存储bed区域及其注释内容。需求:例如需要对2个bed文件区域取交集import pandas as pdimport pyranges as pr###需注意,intersect时,列名必须是'Chromosome','Start','End'bed1 = pd.read_csv(bed1_path原创 2021-08-12 18:20:23 · 356 阅读 · 0 评论 -
htslib/sam.h--操作bed文件
一、介绍bed文件必有3个字段,以及9个可选字段。必有字段1. chrom:染色体2. start:起始位置3. end:终止位置需要注意的是,bed文件是0-base坐标系统,例如以下1 6484955 6485369表示的区间坐标实际上是 1号染色体的 [6484956,6485369) 区间其他可选字段目前没有接触过二、判断是否在bed区域比如想判断1:101是否在bed区域#include <htslib/tbx.h>#in...原创 2021-04-20 18:04:44 · 511 阅读 · 0 评论 -
python操作VCF文件
安装pip install PyVCF使用#如果有多个样本,可以这样访问,例如双样本,0为normal,1为tumorrecord.samples[0]对vcf进行筛选,并重新生成vcf切记用完一定要closeimport vcftumor_idx=1vcf_reader = vcf.Reader(open(filename1, 'r'))vcf_writer = vcf.Writer(open(filename2,'w'),vcf_reader)for r.原创 2021-02-04 18:52:27 · 3981 阅读 · 4 评论 -
htslib/vcf.h库-操作VCF文件
文件处理使用vcf.h库是,需要将VCF文件转换为BCF并压缩bcftools view -Ob xxx.vcf.gz -o xxx.vcf.gz.bcfbcftools index xxx.vcf.gz.bcf原创 2020-12-17 18:36:36 · 595 阅读 · 0 评论 -
htslib/sam.h库使用说明
介绍samtools用来处理SAM/BAM文件,包括htslib,samtools,bcftools,pysam是python语言对samtools的封装,有着完整的说明文档。但是如果要用C/C++来操作SAM/BAM文件,一定要了解htslib库,我查了很多资料,关于htslib库的说明很少,基本都要靠看源代码,以下总结一些源代码的用法。使用typedef struct{ mplp_aux_t *array; bam_mplp_t iter; int n;原创 2020-10-20 18:28:30 · 1153 阅读 · 0 评论 -
SAM/BAM文件格式说明及举例
SAM文件格式htslib/sam.h是利用C语言对SAM文件进行处理,因此需要了解SAM文件格式。官方说明文档:http://boyun.sh.cn/bio/wp-content/uploads/2012/07/SAM1.pdfSAM文件是一种通用的以TAB为分隔符的比对格式,用来存储reads道参考序列的比对信息。SAM分为两部分,注释信息和比对结果信息,除注释外,每一行是一个readA. 注释信息可有可无,以@开头主要有@HD,说明符合标准的版本、对比序列的排列顺序;@原创 2020-10-20 18:02:37 · 1162 阅读 · 0 评论 -
python包Toil---跨平台工作流管理系统
简介Toil是一个开源的纯python开发的工作流引擎运行执行CWL工作流以及WDL工作流,允许跨平台开发测试部署官网:https://toil.readthedocs.io/en/latest/环境安装toil目前仅支持python2.7,且需要virtualenv才可以安装如果不是集群可以如下安装sudo pip install virtualenvvirt...原创 2018-12-05 15:28:10 · 2974 阅读 · 0 评论 -
htslib/tbx.h库使用说明
简介根据我的了解,这个库主要用来读取bed文件,以下在我的使用过程中整理出来的说明由于bam bed文件比较大,pysam处理起来十分缓慢,因此需要使用C语言来处理。#include<htslib/tbx.h>#include <htslib/faidx.h>typedef struct{ htsFile *fp; tbx_t *tbx; hts_itr_t *itr; kstring_t ks;} bed_t;#def.原创 2020-09-25 13:52:37 · 438 阅读 · 0 评论