Seite 1 von 1

Datensatz bereinigen problem

BeitragVerfasst: So 22. Mai 2022, 15:34
von Iranhnsn
Hallo,
ich kenne mich leider nicht mit Stata aus und habe Probleme bei der Bereinigung/Umsortierung eines Datensatzes.
Mein Datensatz beinhaltet in einer Spalte sowohl numerische Werte und geschriebene Definitionen. Gibt es einen Befehl, womit man praktisch alle Zahlenwerte in eine neue Spalte ziehen kann und diese auch direkt aus der alten Spalte löschen kann, sodass am Ende praktisch 2 getrennte Spalten da sind.
Vielen Dank im Voraus!
liebe grüße

Re: Datensatz bereinigen problem

BeitragVerfasst: So 22. Mai 2022, 21:12
von Staxa
Gibt es hier ein bestimmtes Zeichen, z.B. ein Leerzeichen, was immer Zahlen von Text trennt? Hier wäre eine Lösung beschrieben:

https://www.stata.com/support/faqs/data ... -variable/

Hier ist noch ein anderes Beispiel:

https://www.techtips.surveydesign.com.a ... it-command

Ansonsten musst du mal einen Datenauszug posten.

Re: Datensatz bereinigen problem

BeitragVerfasst: Mo 23. Mai 2022, 12:09
von Iranhnsn
Hallo!
Vielen Dank für die schnelle Antwort.
Ich habe mich leider zu ungenau ausgedrückt. Die Spalte beinhaltet nicht innerhalb einer Zeile numerische Werte und Beschreibungen sondern nur jeder nte Eintrag in Spalte A ist eine Beschreibung so wie auf dem Bild zu sehen ist.
Was kann man da machen?

Vielen dank nochmal!

Re: Datensatz bereinigen problem

BeitragVerfasst: Mo 23. Mai 2022, 12:36
von Staxa
Also es geht um das WZ08-05? Das muss herausgelöst werden?

Re: Datensatz bereinigen problem

BeitragVerfasst: Mo 23. Mai 2022, 12:37
von Iranhnsn
Ja genau, die ganze Beschreibung!

Re: Datensatz bereinigen problem

BeitragVerfasst: Mo 23. Mai 2022, 12:40
von Staxa
Kannst du ein paar mehr Beispiele posten, also für andere Zeilen? Wenn es komplexe Formate sind wirst du um regular expressions nicht herum kommen.

Re: Datensatz bereinigen problem

BeitragVerfasst: Mo 23. Mai 2022, 13:29
von Iranhnsn
Es ist praktisch immer so, dass zuerst das label steht, dann alle werte für den Zeitraum von 2007-2020, wobei aber immer nur zu Beginn des Jahres eine Jahreszahl steht und dann wenn alle Zeiträume durch sind, steht das neue Label und es wird wieder der Zeitraum abgebildet

Re: Datensatz bereinigen problem

BeitragVerfasst: Mo 23. Mai 2022, 13:31
von Iranhnsn
Noch ein Beispiel

Re: Datensatz bereinigen problem

BeitragVerfasst: Mo 23. Mai 2022, 14:17
von Staxa
Das sind wieder Screenshots und keine Daten, aber gut...

Ich würde hier die Jahreszahlen forcieren etwa

Code: Alles auswählen
destring A, replace force


Deine Monate würde ich dann manuell kodieren

Code: Alles auswählen
gen month = .
replace month = 1 if B == "January"
replace month = 2 if B == "February"

usw...

Und dann das Datum generieren. Zuerst die Jahreszahlen fortschreiben:
Code: Alles auswählen
replace A = A[_n-1] if missing(A) & !missing(A[_n-1])


Und dann
Code: Alles auswählen
gen date = mdy(month, 1, A)