基于excel和python拆分数据为多行
在基因富集操作后我们会得到这样的结果,像下图这样可以看到富集的通路中都涉及了哪些基因ID,但是这样查看并不友好,我们可以拿这两列数据去做个转换,清楚直观的呈现这种对应关系。也就是将后面按 / 分割的基因拆分为多行。
Excel+Word操作
1. 我们先复制这两列数据到空白区域
2.打开word,将这两列数据复制,按照目标样式粘贴进来
3. 然后光标就停留在第一个框,ctrl + H弹出查找与替换,将/ 全部替换为^p
可以看到现在已经变为多列的形式了。
4.我们复制该表粘贴回Excel中,并添加框线。
python 编程
以这俩列数据作为输入文件写个代码test.py,如下
#!/usr/bin/python import sys dict = {} final = open(sys.argv[2],'w') with open(sys.argv[1],'r') as p: for line in p: line = line.strip().split('\t') gene = line[0] dict[gene] = line[1] for key,value in dict.items(): for i in value.split('/'): print(f'{key}\t{i}',file=final) final.close()
python test.py input.txt output.txt 产生结果文件为下图:
OK,两种方法处理其实都比较快的,对python不太熟悉的就用Excel就好了~~