永发信息网

用perl处理按第三列相同就合并求平均值

答案:1  悬赏:60  手机版
解决时间 2021-01-24 15:03
  • 提问者网友:暮烟疏雨之际
  • 2021-01-23 20:31
用perl处理按第三列相同就合并求平均值
最佳答案
  • 五星知识达人网友:骨子里都是戏
  • 2021-01-23 21:24
比较简单自己写就可以了啊
while ()

chomp;
@d = split;
next if $#d != 2;
if (!exists $data{$d[2]})
{
$data{$d[2]} = [$d[1], 1];
}
else
{
$data{$d[2]}[0] += $d[1];
$data{$d[2]}[1]++;
}
}
for (keys %data)
{
print $data{$_}[0]/$data{$_}[1], " $_
";
}
__DATA__
1    0.66    abc

2    0.68    abc
3    0.70    abc
4    0.63    de
5    0.61    de
6    -0.71    fg
7    -0.73    fg
8    0.54    h
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯