2021.04.12丨对测序样品统一命名

2023-11-21 14:40

本文主要是介绍2021.04.12丨对测序样品统一命名,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 

  • 摘要
    • 在公司已经待了几个月,项目也有条不紊地推进。RNA-seq流程是早就搭建好了的,奈何拿到的测序样品数据名称和后缀经常会有一些变化,比如R1.fq.gz, R1_001.fq.gz, R1_001.fastq.gz等等。导致每次都要到流程里面改一下后缀。为了尽早实现标准化,周末闲来无事,把这个统一命名的问题解决了一下
  • 环境配置
    • python:3.8.5
  • 使用代码
#encoding=utf-8
import os
path = "./"
filelist = os.listdir(path) #该文件夹下所有的文件(包括文件夹)
for file in filelist:print(file)
for file in filelist:   #遍历所有文件Olddir=os.path.join(path,file)   #原来的文件路径#print(Olddir)'''if os.path.isdir(Olddir):   #如果是文件夹则跳过continue'''filename=os.path.splitext(file)[0]   #文件名filetype=os.path.splitext(file)[1]   #文件扩展名if "_R1" in filename:filename=filename.split('_R1')print(filename[0])Newdir=os.path.join(path,filename[0]+"_R1.fastq"+filetype)print(Newdir)elif "_1" in filename:filename=filename.split('_1')print(filename[0])Newdir=os.path.join(path,filename[0]+"_R1.fastq"+filetype)print(Newdir)if "_R2" in filename:filename=filename.split('_R2')print(filename[0])Newdir=os.path.join(path,filename[0]+"_R2.fastq"+filetype)print(Newdir)elif "_2" in filename:filename=filename.split('_2')print(filename[0])Newdir=os.path.join(path,filename[0]+"_R2.fastq"+filetype)print(Newdir)else:continue#os.rename(Olddir,Newdir)#重命名

结果展示:

处理前

处理后

总结:慢慢地还要通过脚本去解决一些小问题,比如单/双端测序在snakemake工作流上的识别,一次性输入解决样品的差异分组等。完成这些小问题都有助于完善流程的标准化。

代码参考:(1条消息) python实现文件重命名_不负韶华,逐梦如初-CSDN博客_python重命名文件名

 

 

 

 

 

这篇关于2021.04.12丨对测序样品统一命名的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/402991

相关文章

变量与命名

引言         在前两个课时中,我们已经了解了 Python 程序的基本结构,学习了如何正确地使用缩进来组织代码,并且知道了注释的重要性。现在我们将进一步深入到 Python 编程的核心——变量与命名。变量是我们存储数据的主要方式,而合理的命名则有助于提高代码的可读性和可维护性。 变量的概念与使用         在 Python 中,变量是一种用来存储数据值的标识符。创建变量很简单,

华为OD机试真题-学生方阵-2024年OD统一考试(E卷)

题目描述 学校组织活动,将学生排成一个矩形方阵。 请在矩形方阵中找到最大的位置相连的男生数量。这个相连位置在一个直线上,方向可以是水平的,垂直的,成对角线的或者呈反对角线的。 注:学生个数不会超过10000 输入描述 输入的第一行为矩阵的行数和列数, 接下来的 n行为矩阵元素,元素间用""分隔。 输出描述 输出一个整数,表示矩阵中最长的位

UML- 统一建模语言(Unified Modeling Language)创建项目的序列图及类图

陈科肇 ============= 1.主要模型 在UML系统开发中有三个主要的模型: 功能模型:从用户的角度展示系统的功能,包括用例图。 对象模型:采用对象、属性、操作、关联等概念展示系统的结构和基础,包括类图、对象图、包图。 动态模型:展现系统的内部行为。 包括序列图、活动图、状态图。 因为要创建个人空间项目并不是一个很大的项目,我这里只须关注两种图的创建就可以了,而在开始创建UML图

BERN2(生物医学领域)命名实体识别与命名规范化工具

BERN2: an advanced neural biomedical named entity recognition and normalization tool 《Bioinformatics》2022 1 摘要 NER和NEN:在生物医学自然语言处理中,NER和NEN是关键任务,它们使得从生物医学文献中自动提取实体(如疾病和药物)成为可能。 BERN2:BERN2是一个工具,

【C/C++】变量命名规范

在 C++ 中,为 bool 类型的变量命名时,通常遵循以下命名规范,以确保代码的可读性和一致性: 表示状态或条件: 使用 is 前缀表示某个状态或条件,例如 isReady、isValid。使用 has 前缀表示是否拥有某个属性,例如 hasData、hasError。使用 can 前缀表示是否具备某种能力,例如 canExecute、canRead。使用 should 前缀表示是否应该执行

大话C++:第6篇 命名空间namespace作用域

1 命名空间概述 在一个大型的软件项目中,可能会有许多不同的代码文件,这些文件可能由不同的开发者编写,或者来自不同的库和模块。如果这些代码文件中存在同名的变量、函数、类或其他标识符,那么在编译或运行时就可能发生命名冲突,导致程序无法正确执行。 通过使用命名空间(namespace),开发者可以将相关的代码、变量、函数等组织在一起,形成一个独立的命名空间。这样,即使不同的代码片段中使用了相同的标

VsCode中 找不到UnityEngine.AddressableAssets命名空间

Unity2019.3.5 VsCode中 找不到UnityEngine.AddressableAssets命名空间 命名空间“UnityEngine”中不存在类型或命名空间名“AddressableAssets”(是否缺少程序集引用?) 由于在Unity2019.3.5 AddressableAssets模块的dll文件移到其他位置了,vscode还是找的以前的路径所以会导致引用不正确 解

二、Java之关键字与命名规范

Java之关键字与命名规范 零基础学Java什么是关键字命名规范的重要性 零基础学Java Java学习交流 : V:study_51ctofx 什么是关键字 关键字:含有特殊意义,编译器解析成特定的含义; 比如 private、int、void、class、enum 等等, 这些关键字都不能用作变量、方法名、类名等. //错误,static 是关键字 不能用作变量名

android的工程和代码的命名规范(第一篇文章,勿喷)

1。首先我们从编译代码的工具说起吧:工程中的注释一般都是中文写的(毕竟大家都是中国人,还是习惯于中文)这样就设计到乱码的问题了;对于这类问题,我们一般最好的处理方法就是将工程设置成 UTF-8 的格式;下面就说说怎么将工作空间或者是工程设置成UTF-8 的格式吧(当然我这里面说的是eclips

【matlab 激活】2017.11.11日后matlab统一过期需激活解决办法

在matlab安装目录中找到license目录,并创建license.lic文件,然后把以下内容copy到文件中,重启matlab。 INCREMENT Aerospace_Blockset MLM 99 permanent uncounted \ A05070F00D1EB1F92326 VENDOR_STRING=QQ=47399897 HOSTID=ANY \