对某文件的每行进行加和标准差计算

对文件每行进行加和(从第一列开始)

awk '{for (i=1;i<=NF;i++)sum+=$i;print sum;sum=0}' data.txt

-------data.txt----------

code1 code2 code3

0.0588235294118 0.0285714285714

0.68 0.411764705882 0.142857142857

0.04 0.0588235294118 0.0285714285714


对文件每行进行加和(从第五列开始)

awk '{for (i=5;i<=NF;i++)sum+=$i;print sum;sum=0}' data.txt

-------data.txt------------

#Chr start end ID code1 code2 code3

1 882519 915493 region1 0.0588235294118 0.0285714285714

1 882519 994379 region2 0.68 0.411764705882 0.142857142857

1 915550 994379 region3 0.04 0.0588235294118 0.0285714285714


对文件每行进行标准差计算,并加到最后一列(从第一列开始)

awk '{for(i=1;i<=NF;i++){s+=$i;ss+=$i*$i}m=s/NF;$(NF+1)=sqrt(ss/NF-m*m);s=ss=0}1' data.txt

-------data.txt----------

code1 code2 code3

0.0588235294118 0.0285714285714

0.68 0.411764705882 0.142857142857

0.04 0.0588235294118 0.0285714285714


对文件每行进行标准差计算,并加到最后一列(从第五列开始)

awk '{for(i=5;i<=NF;i++){s+=$i;ss+=$i*$i}m=s/(NF-4);$(NF+1)=sqrt(ss/(NF-4)-m*m);s=ss=0}1' data.txt

-------data.txt------------

#Chrstart end ID code1 code2 code3

1 882519 915493 region1 0.0588235294118 0.0285714285714

1 882519 994379 region2 0.68 0.411764705882 0.142857142857

1 915550 994379 region3 0.04 0.0588235294118 0.0285714285714

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容