组装整合 salmon 定量结果
组装整合 salmon 定量结果
前言
在转录组分析的过程中在使用 salmon 转录本定量的后的结果一般是一个样本一个结果,但后续需要进行差异分析的时候需要的是整合所有的样本的基因表达量矩阵。
下面是我初步处理后的 salmon 文件结构:

需要对 *.salmon.gene.count.tab 进行处理
下面是取自 AL_N_3.salmon.gene.count.tab 的部分内容
Name AL_N_3
ENSB:ZIylNmwJIYiC6LP 192
ENSB:HqOAmBAR83g0PLg 138
ENSB:ERheWX891cGy65u 0
ENSB:raa7hF97OToBe8J 56
ENSB:u45AeqxTVafqDib 128
ENSB:OStRz_ugGCnhpRm 1755
ENSB:g5esewjaDF2sjFP 486
代码针对上面描述的文件目录进行处理。
代码
import pandas as pd
import os
metadata = pd.read_csv('metadata.txt', sep = '\t')
id_list = metadata['SampleID'].tolist()
# 初始化一个列表来保存所有的数据框
dfs = []
# 需要读取id列表中的所有文件夹中的.salmon.gene.count.tab结尾的文件并将他们全连接merge
# 读取每个文件并加入到列表中
for sample_id in id_list:
file_path = os.path.join(sample_id, f"{sample_id}.salmon.gene.count.tab")
if os.path.exists(file_path):
df = pd.read_csv(file_path, sep='\t')
dfs.append(df)
else:
print(f"File {file_path} does not exist!")
# 检查是否读取了数据框
if dfs:
# 用第一个数据框作为基础开始合并
merged_df = dfs[0]
# 与其他数据框进行合并
for df in dfs[1:]:
merged_df = pd.merge(merged_df, df, on=merged_df.columns[0])
# 保存合并后的数据框
merged_df.to_csv("merged_output.csv", index=False, sep='\t')
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」