English (United States) Deutsch (Deutschland)

    subspell

    Guten Tag an Alle,

    ich möchte Einkommensentwicklungen näher betrachten. Somit ist die Anwendung von
    subspell == 0 nicht zielführend, da dadurch nur ein Einkommen den gesamten spell repräsentiert.

    Beispiel: [Edit: zensiert]

    wird nach dem Merge mit SC6_Biography_D_8-0-0 nur das Einkommen EUR 3330 (supspell=0; spell=10) übernommen:

    [Edit: zensiert]

    Die Frage ist: Wie kann der Datensatz SC6_spEmp_D_8-0-0 an den Datensatz
    SC6_Biography_D_8-0-0 angedockt werden, sodass die verschiedenen Einkommen
    in den Wellen 2007/2008 bis 2015/2016 beibehalten werden? Spells vor 2007 sind uninteressant.

    Welche Schwierigkeiten könnten im Weiteren beim Anfügen der Datensätze SC6_FurtherEducation_D_8-0-0,
    SC6_pTarget_D_8-0-0 und SC6_spFurtherEdu2_D_8-0-0 auftreten?

    Vielen Dank im Voraus

    Thomas

     

    gefragt vor 01.02.2018
    Thomas Kind9
    Thomas Kind
    bearbeitet vor 02.02.2018
    Simon Dickopf77
    Simon Dickopf

    comments

    • Hallo Thomas,

      wir haben aus deiner Frage die (echten) Datenbeispiele entfernt; trotzdem vielen Dank dafür, dass du dir die Zeit genommen hast, deine Frage so ausführlich wie möglich und an Hand von Beispieldaten zu illustrieren. Das ist sehr hilfreich!

      Allerdings sind wir angehalten, _echte_ Auszüge aus NEPS-Daten nicht hier zuzulassen, weil das als Datenweitergabe an Dritte angesehen werden könnte, die so natürlich nicht zulässig ist. Wir arbeiten momentan noch ein Lösungsansätzen dafür, wie man dennoch möglichst niederschwellig und beispielhaft detaillierte Fragen zu NEPS-Inhalten hier posten kann.

      Grüße
      Bela - Daniel Bela 05.02.2018

    1 Antwort

    Diese Antwort wurde von dem/der ErstellerIn der Frage als die beste Antwort markiert.

    Hallo Thomas!

    Vielen Dank für die erneut sehr detaillierte und gut verständlich gestellte Frage. Ich will versuchen, sie im Folgenden zu beantworten.

    Du beschreibst hier gerade nicht den Standardfall des Zusammenführens der Episodeninformationen; in der Regel empfehlen wir, einfach die Informationen aus subspell==0 an Biography zu spielen. Das sorgt dafür, dass für jede Episode der harmonisierte Wert (das ist in der Regel der letzbekannte, bei manchen Variablen auch der erstgenannte) angespielt wird.

    Nun interessierst du dich aber gerade für die Variation der Einkommensvariable innerhalb einer Erwerbstätigkeit, aber über mehrere Interviewellen hinweg. Exakt zu diesem Zweck sind in den ursprünglichen Episodendaten (hier: spEmp) die einzelnen, zum jeweiligen Erhebungszeitpunkt berichteten Teil-Episoden enthalten. Du hast im Prinzip zwei Wahlmöglichkeiten:

    1. Du verbindest Biography nicht mit dem harmonisierten Desiderat der Teilspells, sondern mit allen Teilspells. Das sorgt allerdings dafür, dass du für eine logische Erwerbsepisode in Biography mehrere Zeilen im Datensatz erhältst: Eine pro Welle, in der zu der Episode berichtet wurde. Vor einer weiterführenden Analyse ist es sehr wahrscheinlich sinnvoll, diese Zeilen wieder auf eine Zeile pro Episode zu reduzieren.
    2. Du berechnest zunächst in spEmp eine (oder mehrere) Variable(n), die die (wie auch immer operationalisierte) Variation des Brutto-Einkommens innerhalb der Erwerbs-Episode enthält. Das Ergebnis schreibst du in alle Zeilen der Episode (also auch die harmonisierte Teil-Episode). Anschließend kannst du wie gehabt Biography mit den harmonisierten Episoden zusammenspielen.

    Ich habe beide Lösungsvorschläge einmal im Folgenden skizziert; das ist nur etwas länger geworden, weil ich am Anfang ein fiktives Datenbeispiel dafür erzeuge:

     

    // data example for employment episodes
    clear
    input long ID_t byte subspell long splink byte wave double ts23510_g1 byte ts2311m_g1 int ts2311y_g1 byte ts2312m_g1 int ts2312y_g1
    10001 0 260023 8 3400 2 2004  11 2015
    10001 1 260023 1  -55 2 2004  7 2008
    10001 2 260023 2 3000 2 2004  12 2010
    10001 3 260023 3 3100 2 2004  2 2012
    10001 4 260023 4 2700 2 2004 9 2012
    10001 5 260023 5 3500 2 2004  11 2013
    10001 6 260023 6 3200 2 2004  6 2014
    10001 7 260023 7 3300 2 2004 9 2015
    10001 8 260023 8 3400 2 2004  11 2015
    end
    label values ts2311m_g1 ts2312m_g1 en1874
    label values ts23510_g1 enmiss
    tempfile spEmp
    save `"`spEmp'"' , replace
    // data example for generated biography
    clear
    input long(ID_t splink) byte(wave sptype startm) int starty byte endm int endy
    10001 260023 8 26  2 2004  11 2015
    end
    label values wave en1871
    label define en1871 ///
    	1 "2007/2008 (ALWA)" ///
    	2 "2009/2010 (1. NEPS-main survey)" ///
    	3 "2010/2011 (2. NEPS-main survey)" ///
    	4 "2011/2012 (3. NEPS-main survey)" ///
    	5 "2012/2013 (4. NEPS-main survey)" ///
    	6 "2013/2014 (5. NEPS-main survey)" ///
    	7 "2014/2015 (6. NEPS-main survey)" ///
    	8 "2015/2016 (7th NEPS-main survey)"
    label values sptype en1870
    label def en1870 26 "Emp"
    label values startm endm en1874
    label define en1874 ///
    	1 "January" ///
    	2 "February" ///
    	3 "March" ///
    	4 "April" ///
    	5 "May" ///
    	6 "June" ///
    	7 "July" ///
    	8 "August" ///
    	9 "September" ///
    	10 "October" ///
    	11 "November" ///
    	12 "December"
    label define enmiss -55 "Not determinable"
    tempfile Biography
    save `"`Biography'"'
    // end of data example setup; if you want to use real-life NEPS data, uncomment the following two lines,
    // and insert the file path to your data copies there
    *local spEmp <PATH TO SC6_spEmp>
    *local Biography <PATH TO SC6_Biography>
    
    // combine spEmp and Biography the classical way: only "harmonized" episodes
    use `"`Biography'"' , clear
    generate subspell=0
    merge 1:1 ID_t splink subspell using `"`spEmp'"' , keepusing(ts23510_g1 ts2311m_g1 ts2311y_g1 ts2312m_g1 ts2312y_g1) keep(master match) nogenerate
    drop subspell
    list , sepby(ID_t)
    * --> as reported, only the harmonized (== most recent earnings) information is merged
    
    // combine spEmp and Biography more sophisticated, variant 1:
    // include all subspell information
    use `"`spEmp'"' , clear
    drop if subspell==0
    tempfile spEmp_reduced
    save `"`spEmp_reduced'"'
    use `"`Biography'"' , clear
    merge 1:m ID_t splink using `"`spEmp_reduced'"' , keepusing(ts23510_g1 ts2311m_g1 ts2311y_g1 ts2312m_g1 ts2312y_g1) keep(master match) nogenerate
    list , sepby(ID_t)
    
    // combine spEmp and Biography more sophisticated, variant 2:
    // generate earnings variation in spEmp, merge the classical way afterwards
    use `"`spEmp'"' , clear
    * encode missing values in ts23510_g1
    nepsmiss ts23510_g1
    * erase earnings information from harmonized subspell in order to not distort the follow-up calculations
    * (save in backup variable anyways, to re-insert lateron)
    generate ts23510_g1_bak=ts23510_g1 if subspell==0
    replace ts23510_g1=.z if subspell==0
    * generate any kind of indicator for earnings variation inside of an episode
    bysort ID_t splink (subspell) : egen ts23510_sd=sd(ts23510_g1)
    bysort ID_t splink (subspell) : egen ts23510_min=min(ts23510_g1)
    bysort ID_t splink (subspell) : egen ts23510_max=max(ts23510_g1)
    bysort ID_t splink (subspell) : egen ts23510_mean=mean(ts23510_g1)
    * re-insert backup value into ts23510_g1
    replace ts23510_g1=ts23510_g1_bak if subspell==0
    drop ts23510_g1_bak
    tempfile spEmp_prepared
    save `"`spEmp_prepared'"'
    use `"`Biography'"' , clear
    generate subspell=0
    merge 1:1 ID_t splink subspell using `"`spEmp_prepared'"' , keepusing(ts23510_*) keep(master match) nogenerate
    drop subspell
    list , sepby(ID_t)
    

    Ich empfehle dir eher Variante 2. Sie behält Biography im ursprünglichen Episodenformat bei.

    Zur Anschlussfrage: Das Zusammenfügen mit FurtherEducation und spFurtherEdu2 sollte eigentlich unproblematisch funktionieren; beim Zusammenspielen der Daten zu pTarget sind naturgemäß alle Stolpersteine zu beachten, die immer im Weg legen, wenn man Episodendaten mit Paneldaten zusammenspielen möchte (Stichwort: Mehrere Episoden in einer Welle, daher mehrere Zeilen pro Person und Welle im Episodendatensatz).

    Beste Grüße
    Bela

    beantwortet vor 05.02.2018 Daniel Bela 186
    Daniel Bela

    Ihre Antwort

    Um Beiträge zu erstellen, müssen Sie eingeloggt sein. Hier geht es zum Login

    Ich melde diesen Beitrag,..




    10 Moderator über verbleibende Meldungen informieren

    Ich lösche diesen Beitrag,...




    Ich melde diese Antwort,...




    10 Moderator über verbleibende Meldungen informieren

    Melden eines Beitrags

    Sie haben diesen Beitrag bereits gemeldet. Wenn Sie auf 'Meldung entfernen' klicken, wird die Anzahl der Meldungen für diesen Beitrag um eins verringert.

    Ich lösche diese Antwort, weil...