VCF文件修改染色体格式的方法

简介: VCF文件修改染色体格式的方法

VCF文件修改染色体格式

前言:在VCF文件中第一列是CHROME染色体信息,许多软件对染色体信息列具有比较特殊的格式要求,最近遇到一个问题,VCF文件中染色体格式是“chr1A”,而参考基因组的染色体格式是“Chr1A”,两者首字母大小写不一样,导致识别时出错。

今天分享一个shell脚本,快速将VCF文件中染色体信息列格式进行替换,当然其他信息也是同理,都可以修改。

检查命令行参数

#!/bin/bash
if [ $# -ne 1 ]; then
    echo "Usage: $0 input_file.vcf.gz"
    exit 1
fi
input_file="$1"

提取文件名和扩展名

filename=$(basename -- "$input_file")
extension="${filename##*.}"
filename="${filename%.*}"

解压缩vcf文件

gunzip "$input_file"

替换文件中的"chr"为"Chr"

sed -i 's/chr/Chr/g' "${filename}"

重新压缩文件

gzip "${filename}"
echo "Finished! Replaced 'chr' with 'Chr' in $input_file"

bcftools方法

另外用bcftools也能进行这项工作,首先用一个txt文档存储染色体对应信息,第一列是旧的格式,第二列是新的格式。步骤如下:

  • bcftools annotate
  • annotate rename-chrs
  • bgzip
bcftools annotate \
  --rename-chrs chr_name.txt \ 
  old.vcf.gz | \
  bgzip -c > \
  new.vcf.gz

今天的分享到这里结束,如果感觉有用欢迎转发分享哈~


END

© 素材来源于网络,侵权请联系后台删除

往期推荐:

文献丨群体转录组分析锁定关键转录因子

文献丨转录组RNA seq——青年阶段!

文献丨高通量表型组图像识别与GWAS

笔记丨ggplot2热图入门学习笔记

笔记丨PCA分析基本知识和数学原理

图书丨R语言、Python、Linux

超算丨数据分析时电脑配置不够用?试试

软件 | 如何进行基因家族分析?TBtools

服务器丨家用联想台式机重装Linux系统

转录组丨一套完整的操作流程案例

转录组丨利用limma包进行差异表达分析

Python笔记丨函数和类相关基础知识总结

Python笔记丨条件与循环流程知识总结

Python笔记丨数据类型基础与易错点总结

GWAS丨全基因组关联分析工具GAPIT最新版

数据可视化丨优雅的带显著性标记的箱线散点图

相关文章
如何用vcftools从VCF文件中提取某条染色体信息
如何用vcftools从VCF文件中提取某条染色体信息
|
SQL 数据挖掘 关系型数据库
SQL自学笔记(1):什么是SQL?有什么用?
本文为用户研究新手介绍SQL(结构化查询语言),解释了SQL的基本概念、入门方法及在用户研究中的应用通过实际案例说明,如用户行为分析、用户细分和满意度调查数据分析,展示了SQL在用户研究中的重要作用。
4149 0
SQL自学笔记(1):什么是SQL?有什么用?
|
设计模式 关系型数据库 测试技术
进阶技巧:提高单元测试覆盖率与代码质量
【10月更文挑战第14天】随着软件复杂性的不断增加,确保代码质量的重要性日益凸显。单元测试作为软件开发过程中的一个重要环节,对于提高代码质量、减少bug以及加快开发速度都有着不可替代的作用。本文将探讨如何优化单元测试以达到更高的测试覆盖率,并确保代码质量。我们将从编写有效的测试用例策略入手,讨论如何避免常见的测试陷阱,使用mocking工具模拟依赖项,以及如何重构难以测试的代码。
648 4
|
SQL 前端开发 数据库
智能评估时代:SurveyKing开源问卷系统YYDS
我发现了一个开源的问卷/考试系统SurveyKing([GitHub](https://github.com/javahuang/surveyking) / [Gitee](https://gitee.com/surveyking/surveyking)),拥有强大功能,包括丰富的问卷设计选项。它在GitHub上有2.9k stars。虽然后端开源,但前端代码未公开。快速体验可通过Docker运行`docker run -p 1991:1991 surveyking/surveyking`。项目部署涉及数据库初始化和编写`docker-compose.yml`。
1116 22
智能评估时代:SurveyKing开源问卷系统YYDS
|
存储 Shell 网络安全
|
SQL 移动开发 开发工具
Hive 高阶--分组窗口函数--取值分组函数( LAG,LEAD,FIRST_VALUE,LAST_VALUE)|学习笔记
快速学习 Hive 高阶--分组窗口函数--取值分组函数( LAG,LEAD,FIRST_VALUE,LAST_VALUE)
1283 0
|
C# Windows 开发者
超越选择焦虑:深入解析WinForms、WPF与UWP——谁才是打造顶级.NET桌面应用的终极利器?从开发效率到视觉享受,全面解读三大框架优劣,助你精准匹配项目需求,构建完美桌面应用生态系统
【8月更文挑战第31天】.NET框架为开发者提供了多种桌面应用开发选项,包括WinForms、WPF和UWP。WinForms简单易用,适合快速开发基本应用;WPF提供强大的UI设计工具和丰富的视觉体验,支持XAML,易于实现复杂布局;UWP专为Windows 10设计,支持多设备,充分利用现代硬件特性。本文通过示例代码详细介绍这三种框架的特点,帮助读者根据项目需求做出明智选择。以下是各框架的简单示例代码,便于理解其基本用法。
1310 0
Python使用正则表达式分割字符串
在Python中,你可以使用re模块的split()函数来根据正则表达式分割字符串。这个函数的工作原理类似于Python内置的str.split()方法,但它允许你使用正则表达式作为分隔符。
uniCloud 创建项目
uniCloud 创建项目
273 0
|
Ubuntu
百度搜索:蓝易云【Ubuntu 22.04上安装NFS服务教程。】
通过以上步骤,你可以在Ubuntu 22.04上安装和配置NFS服务,实现文件共享。确保在进行任何系统配置更改之前备份重要的数据,并在操作过程中小心谨慎,以免造成不必要的问题。
361 0