Seite 1 von 1

Leere Felder zusammenführen

BeitragVerfasst: Fr 18. Mär 2022, 09:30
von Anni25
Hallo zusammen,

ich benutze einen Datensatz der viele leere Felder hat.
Das heißt ich hab ab und zu Zeilen in denen kein einziger Wert drin steht, wie kann ich diese löschen, bzw. die Werte nach vorne ziehen?
Es ist nicht relevant in welcher Spalte die Werte stehen, am liebsten hätte ich alle komprimiert in den ersten Spalten stehen und nicht verteilt bis Spalte 500.

Vielen Dank und viele Grüße,
Anni25

Re: Leere Felder zusammenführen

BeitragVerfasst: Fr 18. Mär 2022, 10:09
von Staxa
Also Spalten sind in Stata Variablen. Du kannst diese löschen mit drop, also etwa

Code: Alles auswählen
drop varname1


Du kannst die Reihenfolge ändern mit order, also etwa

Code: Alles auswählen
order var1 var7 var55 var5 var9

Re: Leere Felder zusammenführen

BeitragVerfasst: Fr 18. Mär 2022, 10:15
von Anni25
Vielen Dank für die Antwort, jedoch habe ich einen Datensatz mit 3 MIo Observationen und 300 Variablen (Klassifizierungen) und manchmal ist dann auf einmal bei Variable 200 nochmal ein Wert, davor jedoch 100 Variablen nichts. Deswegen kann ich die Variablen nicht einfach droppen, sondern würde gerne wie beschrieben die Felder zusammenführen, sodass ich eben nicht Variablen droppe wo zufällig dann noch ein Feld befüllt ist.

Ich suche also zum einen eine Art Befehl die pro Variable schaut ob ein Wert vorhanden ist und wenn nicht diese Variable gedroppt wird und zum anderen dass Felder zusammengeschoben werden, wenn in den Feldern davor keine Zahl steht.

Re: Leere Felder zusammenführen

BeitragVerfasst: Fr 18. Mär 2022, 11:03
von Staxa
Dazu brauchst du dann eine Schleife

Code: Alles auswählen
foreach VAR of varlist _all {
   sum `VAR'
   if `r(N)' == 0 {
      drop `VAR'
   }
}