Ich habe eine Zeitreihe von Sales by Account ID. Um das durchschnittliche Wachstum zu berechnen, muss ich den ersten Monat mit Nicht-Null-Verkäufen für jede ID extrahieren. Da das Konto zu unterschiedlichen Zeiten eingerichtet werden konnte, muss ich beim ersten Mal dynamisch identifizieren, wenn der Umsatz> 0 ist.Finden Sie das erste Nicht-Null-Vorkommen im Datenrahmen
Der Index zu der Zeile würde ausreichen, um zu einer Funktion zu gelangen, die Wachstum berechnet. Also erwarte ich die folgenden Ergebnisse nach Konto ID:
54 - [1]
87 - [4]
95 - [2]
I tried `apply(df$Sales,2,match,x>0)` but this doesn't work.
Irgendwelche Zeiger? Oder gibt es eine einfachere Möglichkeit, CAGR mit diesem Datensatz zu berechnen?
Vielen Dank im Voraus!
CalendarMonth ID Sales
8/1/2008 54 6692.60274
9/1/2008 54 6476.712329
10/1/2008 54 6692.60274
11/1/2008 54 6476.712329
12/1/2008 54 11098.60822
7/1/2008 87 0
8/1/2008 87 0
9/1/2008 87 0
10/1/2008 87 18617.94155
11/1/2008 87 18017.36279
12/1/2008 87 18617.94155
1/1/2009 87 18617.94155
2/1/2009 87 16816.20527
7/1/2008 95 0
8/1/2008 95 8015.956284
9/1/2008 95 0
10/1/2008 95 8015.956284
11/1/2008 95 6309.447514
12/1/2008 95 6519.762431
1/1/2009 95 6519.762431
Wollen Sie sagen, dass Sie den Index für diese Zeile in einer Untergruppe von Einträgen für eine ID wünschen, bei der der Umsatz nicht null ist? Weil 4 für 87 nur dann ist, wenn Sie diese Tabelle unterteilen, sonst wäre es 9 (von oben gezählt). –
Ja, das ist richtig. Ich habe noch nicht komplett herausgefunden, aber mit plyr und ggplot habe ich Visionen, an ID-Untergruppen zu arbeiten, um durchschnittliche Wachstumsraten effizient zu berechnen und zu zeigen. – user1100825