美文网首页
生信地基系列--bedtools

生信地基系列--bedtools

作者: 可能性之兽 | 来源:发表于2022-10-26 17:53 被阅读0次

虽然有人写的挺好的了最全Bedtools使用说明--只看本文就够了 - 简书 (jianshu.com),还是记录一下

bedtools英文文档
Overview — bedtools 2.30.0 documentation

Utility Description
annotate 注释多个文件的覆盖特征
bamtobed 将bam文件转换为BED格式
bamtofastq 将bam文件转换为FASTQ格式
bed12tobed6 将BED12间隔转换为BED6间隔
bedpetobam 将BEDPE间隔转化为BAM格式
bedtobam 将间隔转换为BAM记录
closest 寻找最近的潜在的非重叠区间
cluster 聚类(不合并)重叠的区间
complement 获得区间的补集
coverge 计算特定区间的覆盖
expand 根据列值重复行数
flank 从当前区间侧翼创建新的区间
genomecov 从整个基因组计算覆盖深度
getfasta 根据区间从FASTA文件中提取序列
groupby 按特征列进行分组
igv 创建一个IGV快照批处理脚本
intersect 用各种不同的方式寻找重叠区域
jaccard 计算b/w两个间隔区域的Jaccard统计量
links 创建一个连接UCSC位点的HTML页面
makewindows 创建基因组区间窗口
map 为每个重叠区间队列应用一个函数
maskfasta 利用区间隐藏FASTA文件序列
merge 合并重叠区间形成一个新的区间
multicov 计算多个BAM文件在特定区间的覆盖深度
multiinter 标记多个区间文件的公共区间
nuc 分析FASTA文件某区间的核酸含量
overlap 计算两个区间重叠范围的长度
pairtobed 找出以各种方式重叠区间的对
pairtopair 找出以各种方式重叠其他配对的配对
random 产生一个基因组的随机区间
reldist 计算两个文件的相对距离分布
shift 调整区间的位置
shuffle 在基因组中随机重新分配时间间隔
slop 调整区间的大小
sort 对区间进行排序
subtract 对两个区间文件取差集
tag 根据区间的重叠区域标记BAM Tag
unionbedg 根据多个BEDGRAPH文件合并覆盖区间
window 在一个间隔周围的窗口寻找重叠区间

取两个bed文件的交集

  • 两个bed
bedtools intersect –a A.bed –b B.bed

sort 对区间进行排序

  • 输入bed文件,samtools生成的基因组长度文件.fai
samtools faidx XX.fa ##生成genome.fai
bedtools sort -i XX.bed -g genome.fai

random 对bed文件进行随机抽取;

  • 输入bed文件
bedtools random xx.bed

shuffle 根据提供的bed文件在基因组进行随机抽样

  • 输入文件BED,基因组长度文件.fai
bedtools shuffle -i XX.bed -g genome.fai

按照bed提取序列

bedtools getfasta [OPTIONS] -fi <input FASTA> -bed <BED/GFF/VCF>

pybedtools

直接python内部使用bedtools

from pybedtools import BedTool

snps = BedTool('snps.bed.gz')  # [1]
genes = BedTool('hg19.gff')    # [1]

intergenic_snps = snps.subtract(genes)                       # [2]
nearby = genes.closest(intergenic_snps, d=True, stream=True) # [2, 3]

for gene in nearby:             # [4]
    if int(gene[-1]) < 5000:    # [4]
        print gene.name         # [4]

相关文章

网友评论

      本文标题:生信地基系列--bedtools

      本文链接:https://www.haomeiwen.com/subject/kjtzzrtx.html