linux 中awk语句统计pav矩阵中基因的存在频率
001、测试数据如下:
[root@PC1 test2]# ls a.txt [root@PC1 test2]# cat a.txt 1 0 1 0 1 0 1 1 1 1 1 1 1 0 0 0 0 0 1 0 0 0 1 0 0 1 1 0 0 0 1 1
以上测试数据中,行为样本,也就是以此为样本1一直到样本4, 列为gene, 矩阵中1表示的是基因的存在, 0表示基因的缺失。
002、统计每一个基因在该群体中的存在频率, 实质就是统计每一列中1所占的百分率,这个可以使用awk语句来实现,如下:
[root@PC1 test2]# ls a.txt [root@PC1 test2]# cat a.txt 1 0 1 0 1 0 1 1 1 1 1 1 1 0 0 0 0 0 1 0 0 0 1 0 0 1 1 0 0 0 1 1 [root@PC1 test2]# for i in {1..8}; do awk -v a=$i '{ay[$a]++} END {print ay["1"]/NR}' a.txt ; done ## 输出每一个基因存在频率,第一行对应的是第一列的存在频率, 第二行对应的是第二列的存在频率。。。 0.5 0.5 1 0.25 0.5 0 0.75 0.5
以上语句中for i in {1..8} 是对1到8的数字的以此迭代,可以换成任意递增的数字。
分类:
生信
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
2021-03-10 python中使用任意数量的关键字参数,在形参前添加双*
2021-03-10 python中结合使用位置实参和任意数量实参(收集参数)
2021-03-10 python中传递任意数量的实参 (收集参数)
2021-03-10 python中禁止函数修改列表
2021-03-10 python中使用函数和不使用函数程序的比较
2021-03-10 python中向函数传递列表
2021-03-10 python中将实参变为可选项