Seite 1 von 1

Nur die Zeile mit der höchsten Beobachtung behalten

BeitragVerfasst: Sa 16. Okt 2021, 12:30
von hanna101
Guten Tag,

ich habe einen Datensatz mit ca. 15 Spalten.

Nur zwei Spalten davon muss ich noch optimieren.

Und zwar sind in der spalte dealvalue die Deal Summen für eine Firma pro Jahr summiert (der gvkeyyear zeigt die Firmennummer und das Jahr). Geiches gilt für numberofdealstotal, hier wurden die ingesamten Deals einer Firma summiert.

Jetzt möchte ich allerdings nur die Zeilen mit der höchsten Beobachtung behalten, sodass am Ende für jede Firma pro Jahr nur eine Zeile vorhanden ist.

Mit "collapse" habe ich dies bislang nur immer für eine Spalte hinbekommen, dann aber alle anderen Spalten des Datensatzes gelöscht.

Kann mir jemand dabei helfen? Vielen Dank im Voraus!

Re: Nur die Zeile mit der höchsten Beobachtung behalten

BeitragVerfasst: So 17. Okt 2021, 10:43
von Staxa
Wir markieren zunächst für jede Firma den Wert mit dem höchsten Eintrag und behalten am Ende nur diese Einträge.


Code: Alles auswählen
bysort firma: egen maxvalue = max(dealvalue)
keep if dealvalue == maxvalue


*Falls mehrere Einträge identisch sind pro Firma
Code: Alles auswählen
bysort firma: keep if _n == 1