Datenrahmen zusammenführen, ohne Zeilen zu duplizieren

9

Ich möchte zwei Datenrahmen zusammenführen, möchte aber keine Zeilen duplizieren, wenn mehrere Übereinstimmungen vorhanden sind. Stattdessen möchte ich die Beobachtungen an diesem Tag zusammenfassen.

  

Von? merge: Die Zeilen in den beiden Datenrahmen, die mit den angegebenen Spalten übereinstimmen, werden extrahiert und zusammengefügt. Wenn mehrere Übereinstimmungen vorhanden sind, tragen alle möglichen Übereinstimmungen jeweils eine Zeile.

Hier ist ein Beispielcode:

%Vor%

Ich möchte, dass der letzte Datenrahmen nur 2012-1-3 einmal mit einem Zählwert von 2 auflistet.

    
Boom Shakalaka 12.01.2012, 01:01
quelle

1 Antwort

6

Ich würde vorschlagen, dass Sie sie zusammenführen und dann aggregieren (führen Sie im Wesentlichen eine SUMME für jedes eindeutige Date durch).

%Vor%

Um die Zusammenführung durchzuführen, könntest du aggregate :

verwenden %Vor%

ABER ich würde das Paket plyr empfehlen, was großartig ist! Insbesondere die Funktion ddply .

%Vor%

Der Befehl ddply(df,.(Date),FUN) macht im Wesentlichen:

%Vor%

Also die Funktion, die ich zur Verfügung gestellt habe, erstellt einen Datenrahmen von einer Zeile mit den Spalten Date und Count , die die Summe aller Zählungen für dieses Datum sind.

    
mathematical.coffee 12.01.2012, 01:38
quelle

Tags und Links