Ich habe einen Datenrahmen von Restaurant Inspektionen nach Datum sortiert. Für jede Beobachtung möchte ich zwei zusätzliche Variablen hinzufügen, um festzustellen, wie viele Gesamtinspektionen dieses Restaurant hatte und wie oft sie versagt haben. Ich möchte vermeiden, eine for-Schleife zu verwenden, aber ich weiß nicht, wie ich das sonst tun soll. Im Wesentlichen habe ich momentan einen Datenrahmen, der aus den ersten drei Spalten des Datenrahmens unten besteht, und ich möchte die letzten zwei Spalten hinzufügen.R Zunehmende Variable basierend auf früheren Vorkommen
Anfangsdatenrahmen
Restaurant_ID Date Result
1 01/02/2011 Pass
2 02/05/2011 Pass
3 04/07/2011 Fail
1 09/05/2011 Fail
2 03/13/2012 Pass
1 08/25/2012 Fail
2 09/25/2012 Pass
3 01/05/2013 Pass
Wunsch Ausgang 1
Restaurant_ID Date Result total_inspect failed_inspect
1 01/02/2011 Pass 1 0
2 02/05/2011 Pass 1 0
3 04/07/2011 Fail 1 1
1 09/05/2011 Fail 2 1
2 03/13/2012 Pass 2 0
1 08/25/2012 Fail 3 2
2 09/25/2012 Pass 3 0
3 01/05/2013 Pass 2 1
EDIT: Ich habe erkannt, dass ich will eigentlich die letzten beiden Spalten die Anzahl der insgesamt reflektieren und gescheiterte Kontrollen vor dem aktuelle Beobachtung. Also, was ich eigentlich will, ist
Wunsch Ausgang 2
Restaurant_ID Date Result past_inspect past_failed_inspect
1 01/02/2011 Pass 0 0
2 02/05/2011 Pass 0 0
3 04/07/2011 Fail 0 0
1 09/05/2011 Fail 1 0
2 03/13/2012 Pass 1 0
1 08/25/2012 Fail 2 1
2 09/25/2012 Pass 2 0
3 01/05/2013 Pass 1 1
Danke das ist genial! Ich wusste vorher nichts über das saubere Paket, also weiß ich es zu schätzen, dass Sie mich in diese Richtung weisen. Ich hatte gehofft, du könntest mir mit dem Schnitt helfen, den ich gerade hinzugefügt habe. Ich würde mir wünschen, dass die gesamten und nicht bestandenen Inspektionen die Inspektionen vor der aktuellen Beobachtung widerspiegeln. Zuerst dachte ich, ich könnte nur 1 von beiden Spalten abziehen, aber das funktioniert nicht für past_failed_inspect, wie in der letzten Zeile, wo failed_inspect und past_failed_inspect für Restaurant 3 gleich sind. – person10559
@ person10559 Bitte beachten Sie mein Update. "dt3" ist der "Gewünschte Ausgang 2". – www
Das war unglaublich hilfreich, vielen Dank! – person10559