Wednesday 22 February 2017

Gleitender Mittelwert 12

Reinigen von Daten in Stata Reinigungsdaten ist ein ziemlich breiter Begriff, der für die vorläufigen Manipulationen auf einem Datensatz vor der Analyse gilt. Es wird sehr oft die erste Aufgabe eines wissenschaftlichen Assistenten sein und ist der mühsame Teil jedes Forschungsprojekts, das uns wünscht, dass wir einen Forschungsassistenten haben. Stata ist ein gutes Werkzeug für die Reinigung und Manipulation von Daten, unabhängig von der Software, die Sie für die Analyse verwenden möchten. Ihr erster Durchlauf in einem Datensatz kann eine oder mehrere der folgenden umfassen: Erstellen einer Anzahl kleinerer Untermengen basierend auf Forschungskriterien Löschen von Beobachtungen Löschen von Variablen Transformieren von Variablen Umgang mit Ausreißern Erstellen von Variablen Verschieben von Variablen Beschriften von Variablen Umbenennen von Variablen Ob dies Ihre erste Reinigung ist Daten oder Sie sind ein erfahrener Daten-Affe, finden Sie einige nützliche Tipps, indem Sie mehr lesen. Verwenden Sie die Stata-Hilfedatei. Stata hat eine eingebaute Funktion, die Sie auf das Benutzerhandbuch sowie Hilfedateien auf jedem beliebigen Befehl zugreifen können. Geben Sie einfach im Befehlsfenster die Hilfe ein, gefolgt von dem Namen des Befehls, den Sie benötigen, und drücken Sie die Eingabetaste: Schreiben Sie eine do-Datei. Reinigen Sie niemals einen Dataset durch blindes Eingeben von Befehlen (oder schlimmer, klicken Sie auf Schaltflächen). Sie möchten die Befehle in einer do-Datei schreiben und dann ausführen. Auf diese Weise, wenn Sie einen Fehler machen, werden Sie nicht Ihre gesamte Datenmenge ruiniert haben und Sie müssen nicht wieder von vorne anfangen. Dies ist eine allgemeine Beratung, die für jede Arbeit, die Sie tun, auf Stata gilt. Arbeiten von do-Dateien können andere Menschen sehen, was Sie getan haben, wenn Sie jemals Rat benötigen, macht es Ihre Arbeit reproduzierbar und ermöglicht es Ihnen, kleine Fehler etwas schmerzfrei zu korrigieren. Um eine do-Datei zu starten, klicken Sie auf das Symbol, das wie ein Notizblock in der linken oberen Ecke Ihres Stata viewer2 aussieht. In der Vorstufe Ihrer Arbeit können Sie fühlen, dass ein Do-Datei ist mehr Hindernis, als es nützlich ist. Zum Beispiel, wenn Sie nicht so vertraut mit einem Befehl sind, können Sie es vorziehen, es zuerst auszuprobieren. Eine einfache Möglichkeit, dies zu tun und noch Disziplin über das Schreiben von Do-Dateien ist, um Ihre do-Datei in Stufen zu schreiben, schreiben nur ein paar Befehle, bevor Sie sie ausführen, Korrektur Fehler, wie Sie gehen. Um eine Reihe von Befehlen und nicht die gesamte Do-Datei auszuführen, markieren Sie einfach die, die Sie ausführen möchten, und klicken Sie auf das Symbol Execute Selection (do) oben im Dedadate-Editor ganz rechts. Wie Sie mit der Programmierung in Stata kompetenter werden, müssen Sie nicht mehr Befehle ausprobieren, und youll entdecken Sie die Freude am Schreiben eines do-Datei und mit ihm laufen, ohne eine Störung. Um eine ganze do-Datei auszuführen, markieren Sie keinen Teil davon und klicken Sie auf das Symbol Execute Selection (do). Sie können sich fragen, über die Befehle klar, setzen Sie mehr aus und setzen Sie mem 15000 in der Screenshot-Beispiel. Diese drei Befehle sind administrative Befehle, die am Anfang einer do-Datei sehr nützlich sind. Die erste, klar, wird verwendet, um alle früheren Datensatz löschen Sie möglicherweise gearbeitet haben. Der Befehl set more off weist Stata an, die --more-- Nachricht nicht anzuhalten oder anzuzeigen. Schließlich erhöht der Befehlssatz mem 15000 den Speicher, der für Stata von Ihrem Computer verfügbar ist, hier werden wir es brauchen, da die Größe des Datensatzes, den wir von ltodesigt3 heruntergeladen haben, größer als die 10mb ist, die den Daten standardmäßig zugewiesen ist. Ein letzter Kommentar zu do-Dateien: Wenn Sie auf eine gespeicherte do-Datei doppelklicken, wird sie nicht zum Bearbeiten geöffnet, sondern Stata führt diese do-Datei aus, die ein wenig ärgerlich sein kann So öffnen Sie eine do-Datei aus einem Ordner ohne auszuführen Die Befehle darin, klicken Sie mit der rechten Maustaste darauf und wählen Sie Bearbeiten statt öffnen. Halten Sie immer ein Protokoll. Auch dies ist eine allgemeine Faustregel für Stata. Halten Sie ein Protokoll bedeutet, können Sie zurück und schauen, was Sie getan haben, ohne es wieder tun. Starten eines Protokolls ist nur eine Angelegenheit des Hinzufügens eines Befehls an der Spitze Ihrer do-Datei, die Stata zu Protokoll, sowie wo Sie wollen, dass das Protokoll gespeichert werden protokolliert: Protokoll mit whateverpathyouwant: pickanameforyourlog. smcl4. Replace5 Beachten Sie, wie Protokolle unter der smcl-Erweiterung gespeichert werden. Vergessen Sie nicht, das Protokoll zu schließen, bevor Sie ein neues Programm starten. Der letzte Befehl auf Ihrem do-file6 wird in der Regel Protokoll schließen. Speichern Sie, wie Sie gehen. Computer Crash, Macht geht aus, Sachen passiert. Speichern Sie Ihre do-Dateien alle paar Minuten, wie Sie sie schreiben. Das Speichern einer do-Datei erfolgt auf dieselbe Weise wie das Speichern eines Texteditor-Dokuments: Klicken Sie entweder auf das Diskettensymbol oder drücken Sie die STRG-TASTE: Sie sollten auch Ihren Dataset speichern, während Sie ihn ändern, aber stellen Sie sicher, dass Sie eine Version des ursprünglichen Datasets beibehalten, Falls Sie neu anfangen müssen. Der Befehl zum Speichern eines Datasets auf Stata wird gespeichert, gefolgt von dem Pfad, in dem das Dataset gespeichert werden soll, und der optionale Befehl wird ersetzt. Beachten Sie, wie die Erweiterung für Stata-Daten ist. dta, und beachten Sie auch, wie die neue Dataset hat einen anderen Namen aus dem original7. Machen Sie sich mit Ihrem Dataset vertraut. Datasets kommen mit Codebüchern. Sie sollten wissen, was jede Variable ist, wie ihre codiert, wie fehlende Werte identifiziert werden. Eine gute Praxis ist, tatsächlich die Daten zu betrachten, so dass Sie die Struktur der Informationen verstehen. Dazu können Sie in der linken oberen Ecke des Viewers auf Data klicken und dann Data Editor, dann Data Editor (browse) wählen. Ein neues Fenster wird geöffnet und Sie können Ihre Daten sehen. Sie können auch den Befehl browse verwenden, indem Sie ihn entweder direkt im Befehlsfenster oder aus einer do-Datei eingeben: Eines der kennzeichnenden Merkmale von ltodesigt ist, dass es beim Herunterladen eines Datasets mit Labels kommt. Variablenbeschriftungen sind Beschreibungen von Variablen, und Wertbeschriftungen werden verwendet, um zu beschreiben, wie Variablen codiert werden. Grundsätzlich sitzt der Wert Etikett oben auf dem Code, so dass, wenn Sie durchsuchen, sehen Sie, was der Code bedeutet, anstatt was es ist. Um dies klarer, können Sie sich die Daten ohne Etiketten. Schauen Sie zum Beispiel auf die Variable GEOPRV. Erstellen einer Anzahl von kleineren Teilmengen auf der Grundlage von Forschungskriterien Es gibt viele Gründe, warum Sie eine kleinere Teilmenge Ihrer Daten, aber die wichtigste ist, dass je größer der Datensatz, desto schwieriger ist es für Stata zu verwalten, die Ihr System verlangsamt. Ihr Ziel ist es, Ihren Dataset so klein wie möglich zu machen, während alle relevanten Informationen. Ihre Forschungs-Agenda bestimmt, was Ihre endgültige Datenmenge enthält. Nehmen wir an, Sie haben Daten über die Gesundheit Gewohnheiten der Kanadier im Alter von 12 und bis, aber Ihre Forschungsfrage ist spezifisch für Frauen im fortpflanzungsfähigen Alter leben in Ontario8. Sie eindeutig nicht brauchen, um die Männer in Ihrem Datensatz zu halten, und Sie müssen nicht die Bewohner der Provinzen außer Ontario zu halten. Darüber hinaus können Sie wahrscheinlich fallen Frauen unter 15 und über 55 Jahre alt. Nun, schauen Sie, wie Sie das tun würden. Zum Löschen von Beobachtungen müssen Sie einen der beiden Stata-Befehle (keep oder drop) mit dem if-Qualifier kombinieren. Stellen Sie sicher, dass Sie Ihren Original-Dataset gespeichert haben, bevor Sie beginnen. Der Keep-Befehl sollte mit Vorsicht verwendet werden (oder ganz vermieden werden), weil es alle fallen, aber was Sie speziell halten. Dies kann ein Problem sein, wenn Sie nicht 100 sicher sind, was Sie behalten möchten. Der Drop-Befehl wird aus Ihrem Dataset fallen, was Sie speziell fragen, Stata zu fallen. Der if-Qualifier beschränkt den Umfang des Befehls auf jene Beobachtungen, für die der Wert eines Ausdrucks wahr ist. Die Syntax für die Verwendung dieses Qualifizierers ist ganz einfach: Wo Befehl in diesem Fall sein würde, ist drop und exp der Ausdruck, der für den drop-Befehl true sein muss. Am Beispiel von Frauen im fortpflanzungsfähigen Alter in Ontario, fällt die erste hervorgehobene Linie Männer, die zweite Linie fällt keine Beobachtung nicht in Ontario, während die letzte Zeile Beobachtungen in Altersgruppen älter oder jünger als unsere Teilmenge von Interesse sinkt. Sie müssen vorsichtig sein mit logischen Operatoren beachten Sie die Syntax in der dritten Zeile. Ein häufiger Fehler ist zu fragen, Stata zu fallen, wenn DHHGAGEgt10 Amp DHHGAGElt2. Es gibt keine Personen im Datensatz, die älter als 55 UND jünger als 15 sind. Wir wollen fallen, wenn älter als 55 ODER jünger als 15. Hier ist eine Liste der Operatoren in Ausdrücken. Sie verwenden meistens logische und relationale Operatoren in Verbindung mit if: Eine andere Möglichkeit, in der Sie Ihren Dataset kleiner machen müssen, ist, indem Sie Variablen entfernen, die für Ihre Recherche nicht nützlich sind. Es kann sein, dass die Informationen, die in einer bestimmten Variablen enthalten sind, dupliziert werden (dh eine andere Variable liefert die gleiche Information) oder möglicherweise alle Beobachtungen für eine Variable fehlen oder eine Variable passiert einfach in Ihrem Dataset, ist aber irrelevant für Ihre Recherche . Das Löschen von Variablen ist sehr einfach, verwenden Sie einfach den Drop-Befehl. Betrachtet man die Daten von CCHS, wird die Variable SLP01 (Anzahl der verbrachten Stunden pro Nacht) als. a (NOT APPLICABLE) für jede Beobachtung im Datensatz codiert. Offensichtlich werden wir nichts von dieser Variablen lernen, also können wir es fallen lassen. Die Syntax für das Löschen von Variablen ist einfach: Wobei varlist die Liste der Variablen ist, die Sie löschen möchten. Es ist einfach, eine Anzahl von Variablen zu einem Zeitpunkt auf diese Weise fallen. Hier falle ich alle Variablen, die als Nicht zutreffend für mehr als 95 von Beobachtungen codiert wurden10: Manchmal werden Variablen nicht so codiert, wie Sie sie wollen. In diesem Abschnitt werden wir auf zwei Transformationen, die Sie auf einige Variablen tun müssen, bevor Sie sie: recode und destring. Der Befehl recode ändert die Werte der numerischen Variablen entsprechend den angegebenen Regeln. Im CCHS-Dataset haben viele Variablen fehlende Werte, die als. a oder. d kodiert sind. Dies ist praktisch, weil es keine Auswirkungen auf Berechnungen, die Sie möglicherweise mit den Daten (z. B. wenn Sie einen Durchschnitt berechnen). Allerdings verwenden viele Datasets 999 als fehlenden Variablencode, und das kann problematisch sein. Vielleicht möchten wir diese als recode. Um sie nicht auf Berechnungen auswirken zu lassen, die wir mit den Daten planen. Die Syntax für diesen Befehl lautet: recode varlist (alter Wert (s) neuer Wert) 11 Ermöglicht das Umkodieren der Höhen - und BMI-Variablen aus den CCHS-Daten (zur Veranschaulichung, da es in diesem Fall nicht notwendig ist): Das Destringing Können Sie im String-Format (zB alphanumerisch) gespeicherte Daten in ein numerisches Format konvertieren. Der CCHS-Dataset enthält keine String-Variable. Um zu sehen, wie eine String-Variable aussieht, können wir mit dem Converse-Befehl tostring eine String-Variable erstellen. Diese Variable wird dann in ein numerisches Format umgewandelt. Eine Zeichenfolgenvariable erscheint im Dateneditor rot: Obwohl sie genauso aussehen kann wie die Variable CIH2, kann Stata keine Berechnungen an der Zeichenfolgenvariablen ausführen (da ihr Format Stata sagt, dass es aus Buchstaben oder anderen Symbolen besteht). Lässt es destringing: Beachten Sie die Verwendung der Optionen erzeugen und ersetzen. Wenn wir die Fake-String-Variable erstellt, haben wir generiert, weil wir eine neue separate Variable wollte. Wenn wir nun destringieren, ersetzen wir die Zeichenkettenvariable durch ihr numerisches Gegenstück. Wie Sie dies in Ihrem eigenen Dataset vornehmen, hängt davon ab, wie Sie die Variablen verwenden möchten. Haben Sie noch eine Verwendung für die Zeichenfolge Variable Wenn also generieren Sie eine neue, wenn Sie destring. Sie wollen nur, dass die Variable nicht im String-Format Dann ersetzen Sie es mit dem neuen. Hier sehen wir, dass unsere Variable string nun vollständig identisch mit der Variablen CIH2 ist: (Wir können diese Variable jetzt fallen lassen) Ausreißer verdienen ihren eigenen Abschnitt, weil es oft Verwirrung darüber gibt, was genau ein Ausreißer darstellt. Ein Ausreißer ist NICHT eine Beobachtung mit einem ungewöhnlichen, aber möglichen Wert für eine variable12 seltene Ereignisse auftreten. Die Ausreißer, die Sie besorgt sein sollten, sind diejenigen, die von Codierungsfehler kommen. Wie erzählst du, was ist der gesunde Menschenverstand geht ein langer Weg hier. Betrachten Sie zunächst Ihre Daten mit dem Dateneditor (browse). Ausreißer neigen dazu, auf Sie springen. Wenn Sie einen kleinen Dataset haben, können Sie auch jede Ihrer Variablen tabellieren: Wenn Sie eine Variable tabellieren, erhalten Sie eine Liste aller möglichen Werte, die die Variable im Dataset übernimmt. Ausreißer werden die extremen Werte sein. Betrachten Sie die Größenordnung. Sind diese Werte glaubwürdig Wenn der Datensatz sehr groß ist, kann es jedoch nicht praktisch sein, alle Werte, die eine Variable annehmen kann, anzustarren. Tatsächlich wird Stata nicht tabellieren, wenn es zu viele verschiedene Werte gibt. Sie können Ihre Daten in einem Streudiagramm betrachten: Im CCHS-Dataset ist caseid die individuelle ID, während hwtghtm die Höhe in Metern ist. Der Graph zeigt uns, dass es keine Ausreißer in diesem Datensatz gibt: Eine weitere Möglichkeit, nach Ausreißern zu suchen, besteht darin, die Beobachtungen für eine Variable unter Verwendung der detaillierten Option zusammenzufassen: Das Ergebnisfenster zeigt die Hauptperzentile der Verteilung (einschließlich des Medians 50), Die ersten vier Momente, sowie die vier kleinsten und vier größten Beobachtungen: Offensichtlich gibt es keine Ausreißer. Machen wir uns für einen Moment vorstellen, dass die 99-Perzentile der Höhenverteilung eine Beobachtung mit 5,2 Metern als Höhe eintragen. Ist es plausibel, dass es in diesem Datensatz wirklich eine 5.2m Frau gab, die in dieser Größenordnung aufgezeichnet wurde, um die sich diese Beobachtung von der zweitgrößten unterscheiden würde. Seine fast 50 Standardabweichungen größer. Was sollten Sie mit einer solchen Beobachtung machen Es gibt eine Reihe von Lösungen, aber keine ist perfekt: Drop es aus Ihrem Dataset (drop, wenn hwtghtmgt1.803) Verwenden Sie die if-Qualifier, um es auszuschließen, wenn Sie Statistiken, die die Höhenvariable verwenden (Befehl, wenn hwtghtmlt1 .803) Ignorieren Sie es, wenn die Höhenvariable nicht wirklich so wichtig ist in Ihrer Recherche und der Rest der Variablen für diese Beobachtungen sind gut codiert Es gibt zwei Hauptbefehle, die Sie kennen müssen, um neue Variablen zu generieren: Gen ist für die Grundlagen, Während egen erlaubt Ihnen, ziemlich Fantasie zu bekommen. Sie können diese mit Qualifiern wie if oder in sowie Präfix wie by und bysort14 kombinieren. Geben Sie beispielsweise an, dass Sie eine Variable erstellen möchten, die Ihnen mitteilt, ob die Frauen im Datensatz einen Live-In-Partner haben. Zwar gibt es keine Sicherungsmethode, um das festzustellen, wir werden es jedoch annähern, indem wir davon ausgehen, dass Frauen, die ihren ehelichen Status als verheiratet oder gemeinnützig gemeint haben, tatsächlich mit ihrem Ehegatten oder ihrem Partner zusammenleben: Die erste Zeile erzeugt die Variable livein und Weist sie einen Wert von 1 zu, wenn der Wert der Familienstatusvariable (dhhgms) entweder 1 (verheiratet) oder 2 (common-law) ist. Die zweite Zeile ersetzt den fehlenden Wertcode durch 0, wodurch die Variable livein binär wird. Nun können Sie sagen, Sie möchten eine kategorische Variable, die Ihnen sagt, nach Altersgruppe, wenn eine Frau ist unterhalb oder über dem Durchschnitt in Bezug auf Body Mass Index (BMI). Die erste Befehlszeile erzeugt eine Variable (meanbmi), die für jede Altersgruppe, den durchschnittlichen BMI für diese Altersgruppe, einen eindeutigen Wert annimmt. Das Präfix bysort ist eine Kombination von by und sort, die Sie äquivalent in zwei Befehle zerlegen können: durch DHHGAGE: egen meanbmimean (HWTGBMI) Der Sortierteil des Befehls organisiert die Beobachtung gemäß der Variablen DHHGAGE, von kleinsten bis größten, einen Schritt erforderlich Bevor Sie eine Aktion durch die Variable vornehmen. Sein normalerweise einfacher, bysort einfach zu verwenden. Die zweite und dritte Zeile (beginnend mit gen) erzeugen eine binäre Variable, die gleich 0 ist, wenn eine Beobachtung einen BMI hat, der niedriger ist als der Durchschnitt ihrer Altersgruppe und 1, wenn ihr BMI über ihrem Altersdurchschnitt liegt. Nun, da Sie diese neuen Variablen erstellt haben, wäre es schön, um sicherzustellen, dass die Regeln, durch die Sie sie erzeugt korrekt war. Idealerweise möchten Sie livein (die neue Variable auf der Grundlage des Familienstandes) und dhhgms (die Familienstatusvariable) betrachten. Allerdings ist es schwer, zwei Variablen zu vergleichen, es sei denn, sie sind Seite an Seite. Mit dem Befehl order können Sie eine Variable verschieben (d. H. Eine Spalte Ihres Datasets verschieben). Wenn Sie eine Variable erstellen, wird sie standardmäßig die letzte Spalte Ihres Datasets. Sie können sie neben einer anderen Variablen verschieben: Wenn wir nun unseren Datensatz betrachten, können wir die neue Variable mit der alten vergleichen und sicherstellen, dass wir sie korrekt codiert haben: Ähnlich, da unsere beiden neuen Variablen für BMI jetzt die sind Letzte Spalten können Sie die ursprüngliche BMI-Variable an das Ende des Datasets verschieben: Es ist jetzt einfach, auf unsere neuen Variablen zu schauen: Beachten Sie das Problem auf Zeile 8 Die Variable bmicat sollte nicht 1 codiert werden, wenn die ursprüngliche BMI-Variable als codiert ist Einen fehlenden Wert. Wir können dieses mit einem schnellen ersetzen reparieren: ersetzen Sie bmicat. Wenn hwtgbmi. d Wenn Sie eine neue Variable erstellen, ist es eine gute Idee, es zu beschriften. Warum haben Sie Ihre Variablen beschriftet macht es einfach für Sie oder andere Personen mit Ihrem Datensatz schnell zu sehen, was jede Variable darstellt. Du solltest an deine Arbeit denken, damit die Menschen sich vermehren können. Kennzeichnen Sie Ihre Variablen ist eine kleine Aufgabe, die es viel einfacher für andere, Ihre Daten zu verwenden 15 macht. Die Syntax für Beschriftungsvariablen lautet wie folgt: label Variable varname label. In unserem vorherigen Beispiel würde der Befehl wie folgt aussehen: Beachten Sie, dass Sie diesen Befehl zum lab var abkürzen können: Sie können feststellen, dass Sie schneller arbeiten, wenn Ihre Variablen Namen haben, die Sie auf den ersten Blick erkennen. In den meisten Fällen ist dies keine notwendige Aufgabe beim Reinigen von Daten, aber wenn Sie beispielsweise Daten aus einem anderen Land verwenden, können Sie feststellen, dass sich die Variablennamen in einer Fremdsprache befinden. Die Syntax ist so einfach wie möglich: rename oldname newname Lets sehen die endgültige do-Datei Ihre do-Datei kann etwas anders sein, aber es sollte in der gleichen endgültigen Dataset: Lets versuchen, es in einem Rutsch, um zu sehen, wenn es Arbeitet. Markieren Sie keinen Befehl und klicken Sie auf Ausführen (Do). Beachten Sie, dass jedes Mal, wenn Stata den Befehl durchsucht, ein Dateneditor auf dem Bildschirm erscheint. Werfen Sie einen Blick auf Ihre Daten und schließen Sie den Dateneditor, damit Stata die do-Datei fortsetzen kann. Lets nehmen auch die Zeit, um unsere Protokolle zu öffnen, um zu sehen, wie es aussieht und wie es nützlich sein könnte. Schließlich können wir unsere endgültigen Datensätze betrachten und sicherstellen, dass sie alle richtigen Variablen im richtigen Format enthält. Das schließt unsere Werkstatt ab, aber es ist nur der Anfang für Sie. Das Erlernen, statistische Software zu benutzen, beinhaltet viel Versuch und Irrtum, wütendes googeln und verzweifelt versuchen, jemanden zu finden, der weiß, wie man eine Schlaufe schreibt, sind einige ausgezeichnete Quellen, um Ihre Arbeitskenntnisse von Stata weiterzuentwickeln: Willkommen am Institut für Digital Forschung und Bildung Repeated Measures Analyse mit Stata Daten: breit versus long Wiederholte Maßnahmen Daten gibt es in zwei verschiedenen Formaten: 1) breit oder 2) lang. Im breiten Format erscheint jedes Thema einmal mit den wiederholten Messungen in derselben Beobachtung. Für Daten im Langformat gibt es eine Beobachtung für jeden Zeitraum für jedes Thema. Hier ist ein Beispiel für Daten im Breitformat für vier Zeiträume. In dem obigen y1 ist die Antwortvariable zum Zeitpunkt eins. In der langen Form sehen die Daten so aus. Beachten Sie, dass time eine explizite Variable mit langen Formdaten ist. Dieses Format wird von einigen Forschern als Periodendaten bezeichnet. Stata analysiert wiederholte Messungen sowohl für anova als auch für lineare Mischmodelle in Langform. Auf der anderen Seite, SAS und SPSS in der Regel analysieren wiederholte Messung anova in breiter Form. Sowohl SAS als auch SPSS erfordern jedoch die Verwendung langer Datenmischmodelle. Der Beispieldatensatz Unser Beispieldatensatz wird clever als Wiederholungsmechanismen bezeichnet und kann mit dem folgenden Befehl heruntergeladen werden. Es gibt insgesamt acht Themen zu vier Zeitpunkten gemessen. Diese Daten sind im Breitformat, wobei y1 die Antwort zum Zeitpunkt 1, y2 die Antwort zum Zeitpunkt 2 und so weiter ist. Die Themen werden in zwei Gruppen von vier Probanden unterteilt, wobei die Variable trt verwendet wird. Hier sind die grundlegenden deskriptiven Statistiken zu jedem der vier Zeitpunkte kombiniert und ausgebrochen von Behandlungsgruppe. Als nächstes werden wir die acht Zelle Mittel mit dem Benutzer schriftlich Befehl, Profilplot. Sie können diesen Befehl herunterladen, indem Sie findit profileplot eingeben, das Befehlsfenster von Stata. Betrachten wir nun die Korrelations - und Kovarianzmatrizen der Antworten über die Zeit. Wiederholte Maßnahme anova nimmt die innerhalb-subject Kovarianz-Struktur ist symmetrisch zusammen. Die oben gezeigte Kovarianzmatrix scheint keine zusammengesetzte Symmetrie zu haben. Wir werden später in der Präsentation näher auf die Kovarianz eingehen. Umwandlung von weit zu lang Jetzt haben wir einige der beschreibenden Statistiken betrachtet, können wir die Daten mit Hilfe des reshape-Befehls in eine lange Form umformen. Die Option i () gibt die Variable an, die das Objekt identifiziert, während die Option j () eine neue Variable erzeugt, die den Zeitraum angibt. Nun, da wir die Daten umgestaltet haben, können wir auf wiederholte Maßnahmen anova. Mehrliche Maßnahmen anova In Anova-Parlance hat dieses Design sowohl zwischen-Subjekt und innerhalb-Subjekt-Effekte, d. h. es ist ein gemischtes Effekte-Modell. Insbesondere wird diese Gestaltung manchmal als eine Split-Plot-Faktoranalyse der Varianz bezeichnet. In Stata müssen mit den Daten in langer Form die Fehlerterme für die zwischen-Subjekt - und In-Sub-Effekte spezifiziert werden. Im Allgemeinen besteht die Regel darin, dass es einen einzigen Fehlerterm für alle zwischen den Subjektwirkungen und einen separaten Fehlerterm für jeden der innerhalb der Subjektfaktoren und für die Interaktion innerhalb des Subjektfaktors gibt. Unser Modell ist relativ einfach mit nur zwei Fehlerbegriffen. Die zwischen-Subjekt-Effekt ist die Behandlung (trt) und sein Fehler Begriff ist verschachtelt in Behandlung (id trt). Die innerhalb des Subjekts Faktor Zeit Zeit. Sein Fehlerterm ist der Restfehler für das Modell. Wiederholte Maßnahmen anova haben die Annahme, dass die Kovarianzstruktur innerhalb des Subjekts symmetrisch, auch bekannt als austauschbar, ist. Bei der zusammengesetzten Symmetrie wird erwartet, dass die Abweichungen zu jedem Zeitpunkt gleich sind und alle Kovarianzen erwartet werden, dass sie zueinander gleich sind. Wenn die Kovarianzstruktur innerhalb des Subjekts nicht symmetrisch ist, können die aus den wiederholten Messungen anova erhaltenen p-Werte die wahren Wahrscheinlichkeiten nicht genau widerspiegeln. Mit Stata können Sie die fehlende zusammengesetzte Symmetrie berücksichtigen, indem Sie die Option repe () in den Befehl anova einbeziehen, der p-Werte für konservative F-Tests berechnet. Wir werden später in der Präsentation Kovarianzstrukturen ausführlicher erörtern. Hier ist der anova-Befehl für unsere Daten. Die Behandlung-by-Zeit-Interaktion ist ebenso signifikant wie die beiden Haupteffekte für die Behandlung und Zeit. Die Ausgabe enthält die p-Werte für drei verschiedene konservative F-Tests: 1) Huynh-Feldt, 2) Greenhouse-Geisser und 3) Boxen konservativ F. Diese Werte sind Indikatoren des p-Wertes, auch wenn sich die Daten nicht erfüllen Die zusammengesetzte Symmetrieannahme. Wir können die zusammengefasste Kovarianz-Matrix durch Betrachten der Srep-Matrix betrachten. Die Inspektion der gepoolten Kovarianzmatrix innerhalb des Subjekts bezweifelt die Gültigkeit der zusammengesetzten Symmetrieannahme. Glücklicherweise zeigen die p-Werte für den konservativen F-Test immer noch signifikante Effekte für die Trttime-Wechselwirkung und den Zeit-Haupteffekt. Tests von einfachen Effekten Da die Behandlung-von-Zeit-Interaktion ist signifikant sollten wir versuchen, die Interaktion zu erklären. Eine Möglichkeit, dies zu tun ist durch den Einsatz von Test von einfachen Effekten. Wir beginnen mit der Betrachtung der Wirkung der Zeit auf jeder Behandlungsstufe. Die Wirkung der Zeit bei jeder Behandlung Die einfache Wirkung der Zeit hat drei Freiheitsgrade für jede Stufe der Behandlung für insgesamt sechs Freiheitsgrade. Dieser Test von einfachen Effekten wird den Restfehler für das Modell als seinen Fehlerterm verwenden. Wir verwenden den Kontrastbefehl, um den Test von einfachen Effekten durchzuführen. Pairwise Follow-ups Da jeder der Tests von einfachen Effekten vier Zeitpunkte umfasst, wird mit paarweisen Vergleichen unter Verwendung des Ränderbefehls mit der pwcompare-Option verfolgt. Anova mit gepooltem Fehlertermin Die Tests der Behandlung an jedem Verbindungspunkt erfordern die Verwendung des gepoolten Fehlers. Das heißt, Pool-ID trt und der Restfehler. Dies geschieht einfach durch Entfernen von id trt aus dem Befehl anova. Beachten Sie, dass die restlichen Freiheitsgrade ist jetzt 24. Die Wirkung der Behandlung zu jeder Zeit Jetzt können wir die einfachen Auswirkungen der Behandlung zu jeder Zeit, wieder mit dem Kontrast Befehl laufen. Da es zu jedem Zeitpunkt zwei Behandlungsstufen gibt, gibt es insgesamt vier Freiheitsgrade. Da jeder Test ein Freiheitsgrad ist, müssen wir keine Nachuntersuchungen durchführen. Graph der Interaktion Ein Graph der Interaktion ist immer nützlich. Wir verwenden den Rand-Befehl und Marginsplot, um die Handlung zu erzeugen. Nachteile von wiederholten Maßnahmen anova Wiederholte Maßnahmen Anova leidet unter mehreren Nachteilen, unter denen sind, nicht zulassen, dass ungleiche Beobachtungen innerhalb des Benutzers Benutzer muss bestimmen, korrekte Fehler Begriff für jeden Effekt setzt zusammen Symmetrie austauschbare Kovarianz Struktur Wiederholte Maßnahmen gemischtes Modell Eine Alternative zu wiederholten Maßnahmen anova läuft Die Analyse als eine wiederholte Maßnahmen gemischt Modell. Wir werden dies mit dem Befehl xtmixed tun. Beachten Sie, dass wir nicht die Fehlerbegriffe angeben müssen, müssen wir nur den Namen der Variablen angeben, auf der die Daten wiederholt werden, in diesem Fall id. Hier ist, was der Befehl xtmixed aussieht. Beachten Sie, dass wir die reml-Option verwenden, damit die Ergebnisse mit den anova-Ergebnissen vergleichbar sind. Zusätzlich zu den Schätzungen der festen Effekte erhalten wir zwei zufällige Effekte. Dies sind die Varianz der Abschnitte und der Restvarianz, die der zwischen-Subjekt - und der In-Subjekt-Variation entsprechen. Xtmixed erzeugt Schätzungen für jeden Begriff im Modell einzeln. Um gemeinsame Tests (multi Grad Freiheit) der Interaktion und Haupteffekte zu erhalten, verwenden wir den Kontrastbefehl. Diagramm der Interaktion Lets Diagramm die Interaktion mit den gleichen Margen und marginsplot Befehle wie zuvor. Test von einfachen Effekten Einmal mehr können wir Tests von einfachen Effekten verwenden, um die signifikante Interaktion zu verstehen. Zeit bei jeder Behandlung Da jeder dieser Tests von einfachen Effekten drei Freiheitsgrade verwendet, werden wir uns paarweise Vergleiche anschließen. Behandlung zu jedem Zeitpunkt Post-hoc-Test der Trends Eine andere Art der Betrachtung dieser Ergebnisse wäre, um den Trend im Laufe der Zeit für jede der beiden Gruppen zu suchen. Wir machen dies mit dem p. Der Operationskoeffizienten von orthogonalen Polynomen verwendet. Wir halten den Bediener, den wir in den Tests der einfachen Effekte benutzt haben, um die Resultate durch Behandlung zu geben. Die Ergebnisse zeigen einen signifikanten linearen Trend sowohl für die Behandlung 1 als auch für die Behandlung 2. Die Behandlung 2 weist einen signifikanten quadratischen Trend auf, während die Behandlung 1 einen signifikanten kubischen Trend aufweist. Post-hoc-Test der partiellen Interaktion Eine weitere Alternative ist die Betrachtung der partiellen Wechselwirkungen zwischen Behandlung und Zeit. Wir werden die beiden Behandlungen und zwei Zeitpunkte für jeden Test anschauen. Um unsere Tests der partiellen Interaktion zu verstehen, hilft es, den Graphen der Interaktion zu betrachten. Der erste Test betrachtet die beiden Zeilen zwischen Zeit 1 und Zeit 2. Der nächste Test betrachtet die Zeilen zwischen Zeit 2 und Zeit 3. Und der abschließende Test betrachtet die zwei Zeilen zwischen Zeit 3 ​​und Zeit 4 Partielle Wechselwirkungen, die wir testen, wenn die Wechselwirkung zwischen den vier Zellen signifikant ist. Die Art und Weise der Einrichtung der Tests der partiellen Interaktion ist die Verwendung der a. (Benachbarten) Kontrast-Operator zusammen mit der für die Interaktion. Die Erklärung ist viel komplexer als das Konzept. Die Ergebnisse zeigen, dass es keine Wechselwirkung zwischen Zeit 1 und Zeit 2 oder zwischen Zeit 2 und Zeit 3 ​​gibt. Es gibt jedoch eine Wechselwirkung zwischen den Zeiten 3 und 4. Innerhalb der Subjekt-Kovarianzstrukturen Wir haben bereits erwähnt, dass wir auf das Thema zurückkommen würden Innerhalb der Kovarianzstrukturen. Also, betrachten wir einige der möglichen innerhalb-Thema Kovarianz Strukturen. Diese Kovarianz-Struktur behandelt die wiederholten Effekte als völlig unabhängig, so als ob das Design zwischen-Subjekte waren. Zusammengesetzte Symmetrie austauschbar Wiederholte Maßnahmen anova nimmt an, dass die Kovarianzstruktur im Inneren eine zusammengesetzte Symmetrie aufweist. Es gibt eine einzige Varianz (Sigma 2) für alle 3 der Zeitpunkte, und es gibt eine einzelne Kovarianz (Sigma 1) für jedes der Paare von Versuchen. Dies ist unten dargestellt. Stata nennt diese Kovarianzstruktur austauschbar. Unstrukturiert Für die unstrukturierte Kovarianz hat jeder Zeitpunkt seine eigene Varianz (z. B. Sigma 1 2 ist die Varianz der Zeit 1) und jedes Paar von Zeitpunkten hat seine eigene Kovarianz (z. B. Sigma 21 ist die Kovarianz von Zeit 1 und Zeit 2). Dies ist die Art der Kovarianz-Struktur findet multivariate Analyse der Varianz (manova). Der Nachteil bei der Verwendung von unstrukturierter Kovarianz ist die Schätzung der größeren Anzahl von Parametern. Autoregressive Eine weitere gemeinsame Kovarianz-Struktur, die häufig in wiederholten Messungen Daten beobachtet wird, ist eine autoregressive Struktur, die erkennt, dass Beobachtungen, die mehr Nähe sind mehr korreliert als Maßnahmen, die weiter entfernt sind. Unten ist ein Beispiel für eine autoregressive 1 Kovarianzmatrix. Es ist auch möglich, autoregressive 2 oder 3 Strukturen zu haben. Zusätzlich zu den oben gezeigten Kovarianzstrukturen bietet Stata auch die folgenden Kovarianzstrukturen an: gleitender Durchschnitt, gebändert, toeplitz und exponentiell. Beispiel mit unstrukturierter Kovarianz Nachdem wir unsere Kovarianzmatrix untersucht haben, haben wir uns entschlossen, eine unstrukturierte Kovarianz innerhalb des Subjekts zu verwenden. Hier ist die gemeinsame (multi Grad Freiheit) Test für die Interaktion. Tests der einfachen Effekte: trttime Da die Interaktion statistisch signifikant ist, werden wir mit einem Test von einfachen Effekten der Zeit bei jeder Behandlung folgen. Wachstumsmodelle Lineares Wachstumsmodell Es ist auch möglich, die Zeit als kontinuierliche Variable zu behandeln Modell als lineares Wachstumsmodell betrachtet werden. Um die Interpretation des Intercept zu vereinfachen, starten wir die Zeit bei Null anstelle von One. Wir tun dies, indem wir eine neue Variable ctime erstellen, die die Zeit - 1 ist. Wir müssen xtmixed wissen lassen, dass wir ctime als stetig behandeln, indem wir die c verwenden. Prefix. Hinweis, bei Verwendung eines gemischten Modells ist es nicht notwendig, dass jedes Subjekt zu den gleichen Zeitpunkten gemessen wird, obwohl in unserem Fall alle alle zu den gleichen vier Zeitpunkten gemessen werden. Hier ist unser lineares Wachstumsmodell. Wie Sie sehen können, ist der Interaktionsbegriff noch statistisch signifikant. Sie müssen vorsichtig sein, um Trt und Ctime als Haupteffekte im anova Sinne zu interpretieren. Der ctime-Koeffizient ist die Steigung von y auf ctime in der Referenzgruppe. Während der Koeffizient für trt die Differenz in den beiden Gruppen ist, wenn ctime null ist. Einfache Pisten Mit dem Befehl dgxx können Sie die Pisten jeder der beiden Behandlungsgruppen nutzen. Beachten Sie, dass die Steigung für trt 1 die gleiche ist wie der Koeffizient für ctime oben. Wir können auch den Unterschied in den Pisten unter Verwendung des Ränderbefehls mit der Referenzgruppencodierung unter Verwendung des r testen. Kontrast-Operator. Es ist nicht wirklich notwendig, dies zu tun, weil wir bereits wissen, dass der Unterschied in Pisten ist signifikant von der Interaktion Begriff oben. In der Tat, wenn Sie den Z-Wert für die Interaktion (3.57) nehmen und quadratisch (12.7449), erhalten Sie das Chi-Quadrat unten in Rundungsfehler. Darstellung der Interaktion Wir können die einfachen Pisten visualisieren, indem wir die Interaktion mithilfe einer Variation von Rändern mit der Option at () und dem Befehl marginsplot grafisch darstellen. Quadratisches Wachstumsmodell Wir müssen uns nicht auf eine lineare Beziehung über die Zeit beschränken. We can easily include a quadratic effect by repeating c. ctime term in our model. Graphing the quadratic model We can graph the quadratic model using the same margins and marginsplot commands that we used for the linear model Cubic growth model If we add an additional ctime to our quadratic growth model, we get a cubic growth model. Graphing the cubic model Slopes for each treatment and time point With a slight variation to the margins command, we can get the slopes for each treatment group at each time point. You will note that for treatment 2 the slopes just keep getting steeper and steeper, while for treatment 1, the slopes go up and then back down. Advantages and disadvantages of mixed models There are both advantages and disadvantages to using mixed models but on the whole mixed models are more flexible and have more advantages than disadvantages. Advantages automatically computes correct standard errors for each effect allows unbalance or missing observations within-subject allows unequal time intervals allows various within-subject covariance structures allows time to be treated as categorical or continuous Disadvantages xtmixed reports results as chi-square the p-values are appropriate for large samples and are biased downwards in small samples The content of this web site should not be construed as an endorsement of any particular web site, book, or software product by the University of California.


No comments:

Post a Comment