Ich habe eine Datei, die so aussieht.entfernen Redundanz in einem Perl-Hash
a_8_3_1-b_30_5_6-c_6_2_1- + b_30_5_6-
a_123_1_1- + d_144_1_7-
a_123_1_1- + c_1_4_1-
b_50_1_1- + d_144_1_7-
a_123_1_1- + c_2_1_2-
c_1_4_1- + a_123_1_1-
a_123_1_1- + a_93_1_2-
d_144_1_7- + a_123_1_1-
c_2_1_2- + a_123_1_1-
a_123_1_1- + c_2_1_2-
Es hat 2 Spalten, die durch ein '+' Zeichen getrennt sind. Ich muss die Anzahl der eindeutigen Kombinationen zählen, die in dieser Datei vorhanden sind.
Wie man sieht, wird eine Kombination gebildet, sagen wir zwischen a_123_1_1- UND c_2_1_2- und auch zwischen c_2_1_2- + a_123_1_1-. Jetzt muss ich das Nein zählen. von Vorkommen solcher Paare in einer solchen Datei, wo ich weiß, dass diese Kombination (unabhängig von ihrer relativen Reihenfolge) 3 mal vorkommt.
Ähnlich ist der Fall mit a_123_1_1- UND d_144_1_7-. Sie treten in zwei Kombinationen auf. Jede Kombination wird einmal angezeigt. Daher ist die kumulative Zählung von diesem = 2
Ich habe ab jetzt versucht, alle diese Zeilen in einem Hash (d. H. Jede Zeile ist ein Schlüssel und sein Vorkommen wird der entsprechende Wert sein) und Drucken der Nr. von Vorkommen mit Kartenfunktion in PERL.
Aber wie kann ich eine solche Redundanz einbeziehen und dieses Problem der Ordnung zwischen einzelnen Elementen lösen?
Bitte helfen.
Zeigen Sie den Code an, den Sie bereits haben. – daxim