Thread Doppelte Werte Ausfiltern (8 answers)
Opened by Lebewesen at 2012-05-03 16:46

Linuxer
 2012-05-03 16:57
#158013 #158013
User since
2006-01-27
3891 Artikel
HausmeisterIn

user image
Lege einen Hash an, in dem Du zu jedem Datenwert (als Schlüssel) das Datum des ersten Auftauchens (als Wert) ablegst, solange der Datenwert noch nicht im Hash existiert.


Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#! /usr/bin/perl
use strict;
use warnings;


my %data;

while ( my $line = <DATA> ) {
    chomp $line;
    my ( $id, $date, $value ) = split /;\s+/, $line;
    # store first occurence of $value with the data
    $data{$value} = $date       if !exists $data{$value};
}

# kontrolle
use Data::Dumper;
print Dumper \%data;


__DATA__
ID; Datum; VeränderbareWerte
01; 2011-01-01; abc
02; 2011-01-01; jkl
01; 2011-01-02; abc
01; 2011-01-03; xyz
meine Beiträge: I.d.R. alle Angaben ohne Gewähr und auf Linux abgestimmt!
Die Sprache heisst Perl, nicht PERL. - Bitte Crossposts als solche kenntlich machen!

View full thread Doppelte Werte Ausfiltern