我想总结每行的整数。我有一个数据文件,我在其中提取信息。
我使用此命令提取第10列中值大于0.25的第7个信息。我想获得超过0.25值的整数总数。但我得到一个超过0.25的整数列表
import ast
ans = ast.literal_eval
我现在收到的示例输出:
awk -F"\t" 'NR>1{split($10,a,":"); count10[a[7]]++} END {for (i in count10) if (i>0.25) print i, count10[i]}' mygene.vcf
我的要求:
0.689 7
0.648 9
0.607 83
0.279 26
样本数据(第10栏)
125
答案 0 :(得分:1)
你基本上已经拥有它了。而不是为for
循环的每次迭代执行打印,而是累积为总和并打印:
awk -F"\t" 'NR>1 {split($10,a,":");
count10[a[7]]++}
END {for (i in count10)
if (i>0.25)
sum += count10[i];
print sum }' mygene.vcf