【问题标题】:How to count number of items with same id in csv in Perl如何在Perl中计算csv中具有相同ID的项目数
【发布时间】:2018-08-30 18:16:10
【问题描述】:

所以我有一个 CSV 文件,其中的列由 : 分隔。它有点像这种格式 User:groupnumber

x:2
y:2
z:4
p:1
q:4

所以组 x 将在该组中有 2 个用户,第 4 组将有 2 个用户,第 1 组将有 1 个用户。

我可以在 perl 中使用什么来执行此操作?我似乎无法弄清楚。我想将它们放入哈希中,但我不知道如何计算许多具有相同值的键。

哈希是最好的方法吗?

【问题讨论】:

    标签: perl csv hash


    【解决方案1】:

    是的,哈希是正确的数据结构。

    #!/usr/bin/perl
    use warnings;
    use strict;
    
    my %count;
    while (<DATA>) {
        chomp;
        my ($user, $group) = split /:/;
        ++$count{$group};
    }
    
    for my $group (keys %count) {
        print "Group $group has $count{$group} members.\n";
    }
    
    __DATA__
    x:2
    y:2
    z:4
    p:1
    q:4
    

    【讨论】:

      猜你喜欢
      • 2017-01-26
      • 2022-01-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-05
      相关资源
      最近更新 更多