早教吧作业答案频道 -->其他-->
linuxshell计算排序awk,sortORuniq!我有一个文本,内容大致如下:123.124.147.148.135.136.[.]表示一系列数据.我的目标是根据第一个第二个数字来计算排序,如果一二号相等,就吧其他值平
题目详情
linux shell 计算排序awk,sort OR uniq!
我有一个文本,内容大致如下:
1 2 3 .
1 2 4 .
1 4 7 .
1 4 8 .
1 3 5 .
1 3 6 .
[.]表示一系列数据.
我的目标是根据第一个第二个数字来计算排序,如果一二号相等,就吧其他值平均,然后根据一二号排序.比如我想要的结果如下
1 2 3.5 .
1 3 5.5 .
1 4 7.5 .
怎么写shell脚本操作?
我有一个文本,内容大致如下:
1 2 3 .
1 2 4 .
1 4 7 .
1 4 8 .
1 3 5 .
1 3 6 .
[.]表示一系列数据.
我的目标是根据第一个第二个数字来计算排序,如果一二号相等,就吧其他值平均,然后根据一二号排序.比如我想要的结果如下
1 2 3.5 .
1 3 5.5 .
1 4 7.5 .
怎么写shell脚本操作?
▼优质解答
答案和解析
是这样吗:
[seesea@UC ]$ cat file
1 2 3 2
1 2 4 2
1 4 7 2
1 4 8 2
1 3 5 2
1 3 6 2
[seesea@UC ]$ awk '{count[$1" "$2]++; for(i=3; i<=NF; ++i) sum[$1" "$2,i]+=$i} END{for(i in count) { printf i; for(j=3; j<=NF; ++j) {printf OFS sum[i,j]/count[i]} print "" }}' file
1 2 3.5 2
1 3 5.5 2
1 4 7.5 2
[seesea@UC ]$ cat file
1 2 3 2
1 2 4 2
1 4 7 2
1 4 8 2
1 3 5 2
1 3 6 2
[seesea@UC ]$ awk '{count[$1" "$2]++; for(i=3; i<=NF; ++i) sum[$1" "$2,i]+=$i} END{for(i in count) { printf i; for(j=3; j<=NF; ++j) {printf OFS sum[i,j]/count[i]} print "" }}' file
1 2 3.5 2
1 3 5.5 2
1 4 7.5 2
看了 linuxshell计算排序...的网友还看了以下:
元素原子序数计算的技巧求解为什么主族和0族当原子序数小于80时用个位加十位+1可得较小同族的元素原 2020-05-22 …
一个两位数与他的反序数之和是一个平方数,这样的平方数有几个?一个两位数与他的反序数(如28的反序数 2020-06-12 …
w+x+y+z=4,求证不等式w+x+y+z=4,且w、x、y、z均大于等于0,证明不等式w平方+ 2020-06-14 …
matlab排序x(列向量)计算得到y,然后对y运用sort从大到小排序,从而得到新的y’,如何得 2020-07-23 …
小明同学在计算机上设计了一个计算程序:x→平方右→+x右→÷x→-x→答案.小军拿了几个数试了一试 2020-07-31 …
1.如果(x的平方+px+q)(x的平方-5x+7)展开式中不含x的立方与x的平方的项,则p+q的 2020-07-31 …
函数图像变换近来数学被这个弄得晕晕的如-f(2-3x)由f(x)怎么变化得到就是⊙y轴翻转⊙伸缩⊙左 2020-11-03 …
函数图像变换近来数学被这个弄得晕晕的如-f(2-3x)由f(x)怎么变化得到就是⊙y轴翻转⊙伸缩⊙左 2020-11-03 …
1.已知x+1/x=-4,则代数式(x+1/x)的平方+x+6+1/x的值是().2.若代数式2x的 2020-11-20 …
(表讲我笨————)1.解方程;7/X平方+X加上3/X平方-X=6/X平方-12.一项工程要在期限 2020-11-27 …