gpt4 book ai didi

Perl,如何将具有重复标识符和重叠值的数据合并为哈希

转载 作者:行者123 更新时间:2023-12-04 22:51:43 25 4
gpt4 key购买 nike

我想知道您是否可以帮助我解决我无法解决的编码问题。我拥有的以制表符分隔的数据如下所示:

00001  AU:137  AU:150  AU:180
00001 AU:137 AU:170
00002 AU:180
00003 AU:147 AU:155
00003 AU:155

我想要的输出是:
00001  AU:137  AU:150  AU:180  AU:170
00002 AU:180
00003 AU:147 AU:155

所以第一列(标识符)将合并值,删除重复项,使其成为散列。我不确定如何处理我当前的数据,因为它不能是具有重复键的哈希。如果标识符相同,我也不确定如何将数据推送到数组中。

我很抱歉没有代码。我确实尝试了一些,实际上,相当多,但即使对于像我这样的新手来说,它们看起来也不合适。

任何帮助,建议将不胜感激,非常感谢您的时间和回答。我非常感谢。

最佳答案

我希望这可以为解决您的问题提供一些想法:

use strict;
use warnings;
use Data::Dumper;

my %hash = ();

while (<DATA>) {
chomp;
my (@row) = split(/\s+/);
my $firstkey = shift @row;

foreach my $secondkey (@row) {
$hash{$firstkey}{$secondkey}++;
}
}

print Dumper \%hash;

__DATA__
00001 AU:137 AU:150 AU:180
00001 AU:137 AU:170
00002 AU:180
00003 AU:147 AU:155
00003 AU:15

关于Perl,如何将具有重复标识符和重叠值的数据合并为哈希,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10170926/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com