python两数相加取相同的_python如何实现多个文件相同位置的数值相加
我有多个文件需要整合,输出所有位点的A值,B值的总和,我通过多步shell已经实现了,但是我想知道用python应该怎么实现。
我的想法是先得到所有位点的总集,然后依次遍历文件,如果文件中有该位点,就加上相应的AB值。但是文件数目多的话,遍历就很慢,想知道有没有更好的办法。
for i in `ls *.txt`;do cut -f1-2 $i > $i.out;done
cat *.out | grep -v '#' | sort -k 1,1 -k 2,2n | uniq > all.pos
for i in `ls *.txt`;do python A.py $i $i.A;done
for i in `ls *.txt`;do python B.py $i $i.B;done
paste *.A > all-A.txt
paste *.B > all-B.txt
awk '{for(i=1;i<=NF;i++) sum+=$i; print sum; sum=0}' all-A.txt > A.count
awk '{for(i=1;i<=NF;i++) sum+=$i; print sum; sum=0}' all-B.txt > B.count
paste A.count B.count | awk '{OFS="\t";print $1,$2,$1+$2,$2/($1+$2)}' > output
### demo1.txt
#Chr Pos A B A+B B/(A+B)
Chr01 11 2 1 3 0.33
Chr01 83 0 2 2 1.00
Chr02 45 1 1 2 0.50
Chr02 84 2 0 2 0.00
### demo2.txt
#Chr Pos A B A+B B/(A+B)
Chr01 11 0 1 1 1.00
Chr01 26 0 2 2 1.00
Chr02 45 1 1 2 0.50
Chr02 84 2 0 2 0.00
### demo3.txt
#Chr Pos A B A+B B/(A+B)
Chr01 26 2 0 3 0.00
Chr01 83 0 2 2 1.00
Chr02 45 1 1 2 0.50
Chr02 84 2 0 2 0.00
### output.txt
#Chr Pos A B A+B B/(A+B)
Chr01 11 2 2 4 0.5
Chr01 26 2 4 6 0.67
...
python两数相加取相同的_python如何实现多个文件相同位置的数值相加相关推荐
- python两数相加取_Leetcode_两数相加_Python
小编从今天起要开始分享一些Leedcode代码,通过好好练习编程能力,争取以后找一份好工作. 题目:两数相加 # Definition for singly-linked list. # class ...
- python两数求和_Python两数相加实现
题目要求: 思路: 遍历第一个与第二个链表,把相同位置的相加 设置一个flag,用来标记相加后大于10的部分,下一位再相加时,就要加上flag的值 遍历至一个链表结束 如果此时flag不为0,把未结束 ...
- python两数相加有进退位_Leetcode_两数相加_python
小编从今天起要开始分享一些Leetcode代码,通过好好练习编程能力,争取以后找一份好工作. 题目:两数相加 # Definition for singly-linked list. # class ...
- python两数相加代码_一边学编程,一边学语数外,用python编程全排列10以内两数加法...
原标题:一边学编程,一边学语数外,用python编程全排列10以内两数加法 编程并不神秘 编程只是解决问题的一共方法 python是一门编程语言 python是一种解决问题的编程工具 在小学阶段,学习 ...
- python两个表格相同数据筛选_python如何统计所有文本文件的行数 如何用python实现两个文件重复数据筛选并统计...
如何用python统计文本中重复行的数目? python比较txt文档中每行文本之间重复词的个数不想面对他离开,逃避不是一个好方法,但却是唯一的办法. 每一行弄成一个集合,分享两个集合之间的交集,计算 ...
- python的三种取整方式_python 取整的两种方法
问题简介: 要把一个浮点数(float)整数部分提取出来.比如把"2.1"变成"2"的这一过程:现在我们给这个过程起一个名字叫"取整".那么 ...
- python的三种取整方式_python取整函数-取整函数,PYTHON
本教程分享:<python取整函数>, python有什么办法使得 int 按照"四舍五入"的方式取... 由于小数取整会采用比较暴力的截断方式,即向下取整,所以要想使 ...
- Python - 两数相除 递进版
一.引言 给定两个整数,被除数 dividend 和除数 divisor.将两数相除,要求不使用乘法.除法和 mod 运算符.返回被除数 dividend 除以除数 divisor 得到的商.整数除法 ...
- python两数之和(hash 表)
两数之和 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标.你可以假设每种输入只会对应一个答案.但是,数 ...
最新文章
- git的常用命令总结
- 类Xadmin插件--海豚插件
- ftp服务器连接成功不显示端口,ftp被动联接端口是怎样确定的
- Vue + webpack 项目配置化、接口请求统一管理
- C++学习之路 | PTA(甲级)—— 1064 Complete Binary Search Tree (30分)(带注释)(精简)
- 设计模式笔记二十三:策略模式
- 消息中间件学习总结(1)——RocketMQ之专访RocketMQ联合创始人:项目思路、技术细节和未来规划
- extjs4.0视频教程
- Matlab中绘制灰度直方图的两个函数imhist和histogram
- 操作系统实验·字符设备驱动程序
- HDU4699Editor
- 怎样用word制作标准格式公文操作实例
- Natbib 参考文献样式
- mininet sflow 资料和经验
- MackDown MAC版添加本地图片
- 我今年50岁了,还在干前端
- 《程序设计基础》 第十一章 指针进阶 7-3 解密英文藏头诗 (15 分)
- Fast unfolding of communities in large networks 中文翻译
- Citesapace作图结果部分——文章整体思路简单分析
- python练习5:输入三个整数 x,y,z,请把这三个数由小到大输出。