ich habe ein Frage zur Variable tg24150_g2 , die angibt wie die Hochschulzugangsberechtigung (HZB) erlangt wurde. Diese Variable gibt es in pTargetCATI und in spVocTrain.
Die Stichprobe sind ja Studierende im 1. Semeter im WS 2010/11, d.h. zu diesem Zeitpunkt muss bereits eine HZB vorliegen. Pinzipiell würde sich die HZB ja dann auch nicht mehr ändern. Ich verstehe daher nicht ganz wieso in spVocTrain, die HZB nicht konstant ist innerhalb eine Person, sondern zwischen Episoden variiert.
Außerdem stimmen die Fallzahlen in beiden Datensätzen für diese Variable nicht ganz überein und ich würde gerne wissen, wie das Zustande kommt. Also ich habe die Fallzahlen für tg24150_g2 vergleichen in spVocTrain (mit der Bedingung, dass nur die Studienepisode WS 10/11 berücksichtigt werden soll; d.h. if h_aktsu==1) und pTargetCati und es gibt zwar nur wenige Abweichungen, aber generell mehr Beobachtungen in pTargetCati. Daher dachte ich , würde ich einfach die Info aus pTargetCATI nehmen, aber gerne nicht ohne zu verstehen wie der Unterschied zustande kommt.
Die Variable bzgl. nichttraditionell Studierende wurde nur in Welle 1 erhoben. Sofern eine Episode in der Folgewelle nicht fortgeführt (aufgesetzt > tg24103) wird, steht in der folgenden Welle -55 oder -54 in tg24150_g2. Im harmonisierten subspell wird -55 eingetragen, wenn die Episode über mehrere Erhebungen andauerte, aber kein gültiger Wert oder auch nur -54er gefunden wurden. Hat eine Episode keine subspells und die Variable wurde nicht erhoben, steht -54 im subspell 0.
Wenn ich nur die harmonisierten Spells behalte und anschließend die Zeilen wegwerfe, die eine Art Missing enthalten, bleibt pro Person nur eine Zeile übrig und ich kann keine abweichenden Werte innerhalb einer Person finden (anbei die Syntax).
Für deine zweite Frage: Variable tg24150_g2 wurde tatsächlich auf den Episodendaten in pTargetCATI übernommen. Ich habe mir die Aufbereitungssyntax vom DZHW angeschaut…
Die Werte sind wahrscheinlich aus folgenden Gründen nicht komplett identisch:
es wurden nicht alle Fälle, die h_aktstu !=1 ausgeschlossen
sechs Fälle wurden im Prüfmodul annulliert und sind deswegen nicht im harmonisierten Spell enthalten, aber, weil der merge vor der Spellaufbereitung passiert, sind sie in pTargetCATI.
Sorry wg. der Fehler, aber bei zehntausenden von Syntaxzeilen kommt das leider immer wieder vor. Ob ich auch das Problem mit h_aktstu korrigieren kann, weiß ich nicht, weil das DZHW daran beteiligt war und die einzelnen Personen fallbasiert kodiert wurden und ich die Systematik der Korrektur nicht kenne. Das Problem mit den annullierten Fällen werde ich bis zum nächsten Release korrigieren.
Viele Grüße
Dietmar
use ID_t splink subspell wave tx20100 tg24150_g2 tg24103 h_aktstu using "SC5_spVocTrain_O_17-0-0.dta", clear
keep if subspell == 0 & h_aktstu == 1
distinct ID_t
drop if tg24150_g2 < 0 | missing(tg24150_g2) // 348 Personen fallen weg, weil garkeinen gültigen Wert haben
distinct ID_t // wir haben 17558 Personen und 17557 Zeilen
// es gibt ein Duplikat: vermutlich wurde in der Aufbereitung eine Zeile vergessen zu löschen
duplicates tag ID_t, generate(dup)
keep ID_t tg24150_g2
duplicates drop
distinct ID_t // wir haben 17557 Personen und 17557 Zeilen >> eine Zeile pro Person - keine Duplikate (mehr)
rename tg24150_g2 tg24150_g2_voctrain
generate wave = 1
merge 1:1 ID_t wave using "SC5_pTargetCATI_O_17-0-0.dta", assert(using matched) keepusing(tg24150_g2 tg24150_g1)
// es gibt keine Fälle, die nur im spVocTrain vorkommen
rename tg24150_g2 tg24150_g2_cati
// Unterschiede zwischen tg24150_g2 aus CATI und spVocTrain:
count if tg24150_g2_cati != tg24150_g2_voctrain & _merge == 3 // keine Abweiohungen in den gematchten Fällen
fre tg24150_g2_cati if _merge == 2, mis // sieben Fälle mit gültigen Werten matchen nicht, vermutlich Fehler in Datenaufbereitung