Ich habe eine Liste von Stata-Datasets: unter anderem eine Variable tor ist nicht vorhanden, und ich möchte hinzufügen, dass Variable, wenn es nicht vorhanden ist. Die Datasets enthalten eine Variable namens x-Klasse, wobei x irgendetwas sein könnte (z. B. Aclass. lclass etc.). Ich möchte diese Variablen zu dec umbenennen. Ich möchte eine Variable anpassen, die ja ist, wenn der Dateiname angepasst und nein wenn nicht. Ich denke, es würde so aussehen: Aber dann in der richtigen Stata-Sprache. So Ive erhielt dieses jetzt, aber sein nicht arbeitend, tut er nichts. Dies ist keine Antwort, das ist Rat, der nicht passt in einen Kommentar. Was du versuchst ist keine elementare Stata. Wenn Sie nicht mit Stata (nicht stata) vertraut sind, finden Sie es schwierig, diesen Prozess zu automatisieren. Im sympathisch zu Ihnen als neuer Benutzer von Stata - seine viel zu absorbieren. Und noch schlimmer, wenn Sie unter Druck stehen, um etwas Ausgabe schnell zu produzieren. Dennoch möchte ich Sie ermutigen, einen Schritt zurück von Ihren unmittelbaren Aufgaben zu nehmen. Als ich anfing, Stata auf eine ernste Weise zu benutzen, fing ich an, meine Weise durch das Erste Schritte mit Stata Handbuch zu lesen, das zu meinem Setup relevant ist. Kapitel 18 gibt dann die vorgeschlagene weitere Lesung, von denen viele im Stata-Benutzerhandbuch. Und ich arbeitete meine Weise durch viel dieses Messwertes außerdem. Es gibt viele Beispiele zum Kopieren und Einfügen in Statas do-Datei-Editor, um sich selbst laufen, und noch besser, mit dem Ändern der Optionen zu sehen, wie die Ergebnisse ändern zu experimentieren. Alle diese Handbücher sind als PDFs in der Stata-Installation (seit Version 11) enthalten und sind von Stata aus zugänglich - beispielsweise über die PDF-Dokumentation des Statas-Hilfemenüs. Das Ziel der Lesung war es nicht so sehr, Stata zu beherrschen, um sicherzustellen, dass Id mit einer Vielzahl wichtiger Grundtechniken vertraut wurde, sodass ich, wenn die Zeit gekommen war, dass ich sie brauchte, an ihre Existenz erinnern konnte, wenn nicht sogar die volle Syntax. Die Stata Dokumentation ist wirklich vorbildlich - theres nur eine Menge davon. Der Weg, den ich folgte, beschreibt die Dinge, die Sie kennen müssen, um in Eile zu beginnen. Mit diesem sagte, finden Sie vielleicht die foreach Befehl hilfreich für Looping, die Dateiliste Befehl für den Erhalt einer Liste von Stata-Datasets (nicht Datenbanken) und der ds-Befehl für den Erhalt einer Liste von Variablennamen innerhalb eines Stata-Dataset. Subtiler wird der Capture-Befehl können Sie versuchen, Ihre tor-Variable zu generieren und wird einfach scheitern anmutig, wenn es bereits vorhanden ist, speichern eine kleine Menge der Programm-Logik. Beantwortet am 6. Juli um 15:04 Der mittlere Teil kann skizziert werden: Auf die Verwaltung von Listen von Dateien: filelist (SSC) ist sehr gut sehen auch fs (SSC) für einen anderen Ansatz. EDIT: Hier ist der Nachweis des Konzepts für das letzte Detail: strpos (ltstring1gt, ltstring2gt) gibt ein Ergebnis ungleich Null zurück, nämlich die Startposition des zweiten Strings im ersten, wenn das erste das zweite enthält. Nicht-Null als Argument bedeutet true in Stata Null bedeutet falsch. Siehe Hilfe strpos () und auf Wunsch help cond (). Ich kann nicht sehen, Ihre Dateinamen zu kommentieren oder testen Sie Ihren Code, aber ein mögliches Problem ist, dass das lokale Makro nicht im selben Namespace wie die, in denen Sie versuchen, den Ausdruck zu bewerten. (Das ist was lokale Mittel.) Ein Makro, das nicht definiert wird, wird als eine leere Zeichenfolge ausgewertet, mit dem Ergebnis, das Sie erwähnen. Antwort # 2 am: Juli 04, 2010, 07:03:13 am »Gen angepasst cond (strpos (quotfilename39quot, quotadocquot), quotyesquot, quotnoquot) erzeugt immer angepasste Nr. Selbst wenn quotadjustedquot im Dateinamen steht. Ist strpos () eine Funktion von selbst Ich kann es nicht scheinen, wenn ich es versucht habe: if (strpos (quotfilename39quot, quotadjustedquot) true). Dann wieder vielleicht macht das keinen Sinn. Ndash DuEllier That39s Fantasy-Syntax auf einer anderen Sprache basiert. Siehe bearbeitete Antwort für eine Antwort. Ndash Nick Cox Fixed wenn rc 0 bis wenn rc. Ndash Ich habe eine Reihe von Variablen, die alle mit pkg beginnen. In ihrer aktuellen Zustand, ihre Endungen sind numerisch: pkg1, pkg2, pkg3, pkg4, etc. Ich muss alle diese Variablen Endungen in Zeichenfolgen: pkgmz, pkggmz, pkgsp, pkgsptc, etc Ich habe eine Spalte dieser Zeichenfolge endet, die Ich kann als lokale Liste benennen, zB: Meine Frage ist, wie ich die numerischen Endungen zu den Schnurendungen ändere. Meine Vermutung am Code folgt. Das . Gibt an, wo ich stumped bin: Ich frage mich, ob es besser wäre, den regexr () - Befehl zu verwenden, aber kann nicht denken, einen Weg, es einzubeziehen. Schätzen Sie jede Hilfe. Es gibt keine Notwendigkeit hier, um reguläre Ausdrücke aufrufen. Sie haben die neuen Suffixe das Präfix pkg ist immer das gleiche, so dass die Arbeit des Extrahierens es wiederholt ist unnötig. Das Herz des Problems ist das Radfahren über zwei Listen auf einmal. Hier ist ein Weg, um Ihren Code zu beheben. Hinweis auch umbenennen in Stata 12 kann diese regexr () behandeln ist eine Funktion, nicht ein Befehl eine allgemeinere Diskussion in stata-journal / sjpdf. htmlarticlenumpr0009 (ein wenig veraltet, aber relevant auf die Hauptfrage) haben Sie auch Viele Anführungszeichen auf Ihrem Umbenennungsbefehl, also würde es nicht arbeiten. Ich habe erwähnt, dass der Umbenennungsbefehl in Stata 12 damit umgehen kann. Ist es möglich, dies in einem einzigen Umbenennen Befehl Ich habe eine Antwort mit ein paar Optionen mit dem neuen Befehl, aber ich konnte nicht herausfinden, ob es möglich war, einen einzigen Anruf verwenden. Ndash Michael A Es ist möglich, es mit einem Befehl zu tun, aber die einzige Antwort, die für mich auftritt, ist nicht engagieren. Umbenennen (pkg1-pkg9) (pkgmz pkgmt pkgsp pkgsptc pkgmil pkgcf pkgsuk pkgtea pkgric) Dennoch bleibt es wahr, dass die Leute verbringen Minuten versuchen, einen cleveren Trick denken, wenn die Namen in Sekunden getippt haben könnten. Ndash Nick Cox Ben fragte in einem Kommentar über inkrementierende Zähler in lokalen Makros statt. Statas lokale Makros sind im Allgemeinen für das Halten von Zeichenfolgen Zeichenfolgen Zeichen können numerisch sein, so halten Zahlen ist ein spezieller Fall, aber natürlich ein sehr nützliches. Allein dieser Thread hat mehrere Beispiele gezeigt. Es hilft, diese Geschichte im Auge zu behalten. Eine langjährige Syntax basiert auf den Formularen Das erste Formular kopiert auf macname, während das zweite Formular ausgewertet wird, bevor die Ergebnisse an macname zugewiesen werden. Der wichtigste Weg, um Zähler zu erhöhen war für mehrere Versionen ist nun erlaubt. Allerdings, obwohl erlaubt nicht funktionieren, wie Sie erwarten können, obwohl was passiert, ist im Einklang mit der ersten Syntax für Makros. Also, wenn dies sieht ein wenig seltsam angesichts Ihrer Hintergrund, das ist verständlich, aber lokale Makros wurden für die Verarbeitung von Zeichen, nicht Arithmetik. Mata ist viel mehr Mainstream-wie in dieser Hinsicht. Ich schrieb ein Tutorial auf Schleifen und Makros in Cox, N. J. 2002. Wie man Listen mit Standhaftigkeit Gesicht. Stata Journal 2 (2): 202-222, das für alle bei As von Stata 12 zugänglich ist, kann Umbenennen diesen Fall auf verschiedene Weise behandeln. Diese Methode erstellt eine neue Makro-Newcroplist mit Variablennamen pkgmz pkgmt pkgsptc pkgmil pkgcof pkgsuk pkgtea pkgric. Verwendet dann Umbenennen, um Variablen nach dem Muster pkgltdigitsgt auf die Namen umzustellen, die in newcroplist angegeben werden. Die Zahlen nach pkg müssen nicht aufeinanderfolgend sein. Eine zweite Methode verwendet die neue Umbenennungsfunktion doppelt so wie zuvor, dies erfordert keine fortlaufenden Nummern in den ursprünglichen Namen. Der erste Befehl umbenennt die Variablen des Musters pkgltdigitsgt zu den in croplist angegebenen Namen. Der zweite Befehl fügt das Präfix pkg zu den neuen Variablennamen hinzu. In beiden Fällen und im Allgemeinen, wenn Sie den Befehl rename (in der Statas-Dokumentation als Umbenennungsgruppe bezeichnet) verwenden, muss die Anzahl der alten Variablennamen mit der Anzahl der neuen Variablennamen übereinstimmen. Stellen Sie daher sicher, dass die Anzahl der Variablen, die mit pkg übereinstimmen, übereinstimmt Die Anzahl der neuen Namen in croplist angegeben. Beantwortet Jun 18 15 um 22:20 Ihre Antwort 2016 Stack Exchange, IncFor schnelle Fragen e-Mail dataprinceton. edu. Keine appts. Notwendig während der begehbaren Stunden. Hinweis: Das DSS-Labor ist geöffnet, solange Firestone geöffnet ist, keine Termine erforderlich, um die Labor-Computer für Ihre eigene Analyse verwenden. Daten, Datasets und Variablen Datenverwaltung Einstellen des Arbeitsverzeichnisses, der Protokolldatei, Öffnen / Speichern einer Stata-Datei, des Stata-Farbcodierungssystems, Umbenennen, Umkodieren und Erstellen neuer Variablen, Löschen von Fällen, Löschen von Variablen, Zusammenführen, Hinzufügen, Frequenzen, Kreuztabellen und deskriptiven Statistiken Hier klicken Datendateien Ein Datensatz ist nur eine Datei, in der Zeilen für Beobachtungen und Spalten für Variablen stehen. Zum Beispiel könnte eine Beobachtung ein Auto sein, und die Variablen würden Stücke von Informationen über das Auto sein, wie die Marke, Länge, Preis und Getriebe-Verhältnis: Wenn Daten bereits in Statas proprietären Dateiformat ist, wird es die haben Erweiterung dta. Zum Beispiel mydata. dta. Daten in diesem Format können mit dem Befehl direkt in Stata eingelesen werden. Wenn Stata Ihnen die Fehlermeldung gibt, wenn Sie versuchen, eine Datendatei zu öffnen, finden Sie hier Informationen zur Behebung des Problems. Stata kann Datensätze in verschiedenen Textformaten sowie im Statas-proprietären Format lesen. Oft beginnt man mit Daten im Textformat, liest sie in Stata und speichert sie im Stata-Format. Sie können auch auf Daten in verschiedenen anderen Formaten stoßen. Beispielsweise werden Daten aus bestimmten Datenarchiven häufig für das statistische Paket SPSS formatiert. Ein Programm namens DBMS / Copy. Verfügbar im DSS-Labor sowie auf Windows-Rechnern in den OIT-Public-Clustern, können Daten von SPSS und von vielen anderen Formaten schnell und einfach in das Stata-Format konvertieren. Ein gemeinsames Textformat ist die abgegrenzte Datei. Abgrenzte Dateien sind meist tabulator - oder kommagetrennte Dateien. Dies bedeutet nur, dass die Variablen in jeder Beobachtung nacheinander auf einer Zeile eingegeben und durch Tabulatoren oder Kommas getrennt werden, während die Beobachtungen durch harte Rückkehr getrennt werden. Das Beispiel oben ist eigentlich, wie eine kommagetrennte Textdatei aussehen würde, wenn in Word geöffnet. Die Befehlssyntax zum Lesen in einer tabulator - oder kommagetrennten Datei lautet: where Dateiname ist der Name der Datei, die die tabulator - oder kommagetrennten Daten enthält. Einblendung wird häufig verwendet, um Kalkulationstabellen zu lesen, die als CSV-Dateien (comma-delimited) von einem Paket wie Excel gespeichert werden. Bitte beachten Sie, dass eine Tabellenkalkulation in eine statafreundliche Form gebracht werden muss, bevor Stata sie in geeigneter Weise lesen kann. Nichtbeachtung kann Kopfschmerzen verursachen. Weitere Informationen finden Sie unter Es gibt zwei Befehle außer insheet - infile und infix -, die andere, weniger gängige Arten von Textdateien lesen. Wenn Sie platzbegrenzte Daten, Daten mit fester Breite oder ein Stata-Datenwörterbuch haben. Siehe Mit dem Befehl Stata speichern können Sie eine Datei im Stata-Format speichern: Dabei steht filename für den Namen Ihrer Stata-Datei. Beispiel: speichert eine Stata-Datei mit dem Namen myfile. dta. Diese Datei kann in Stata mit dem Befehl use gelesen werden. Beachten Sie, dass die. dta-Dateierweiterung automatisch an Stata-Dateien angehängt wird. Sie müssen die Dateierweiterung nicht bei der Verwendung oder beim Speichern von Befehlen enthalten. Wenn Sie bereits eine Stata-Datei mit dem Namen myfile. dta haben und eine aktualisierte Version der Datei unter demselben Namen speichern möchten, verwenden Sie den Befehl Stata save mit der Option replace, wie in: wobei Dateiname der Name der gewünschten Datei ist Zu ersetzen, zB Um eine aktualisierte Version der aktiven Datei zu speichern, können Sie einfach Folgendes eingeben: Mit diesem Befehl wird die vorherige Version Ihrer Datei zerstört. Verwenden Sie daher die Option ersetzen nur, wenn Sie sicher sind, dass Sie die ältere Version Ihrer Datei nicht benötigen. Es gibt keine Möglichkeit, Ihre ursprüngliche Datei abzurufen, sobald eine andere Datei darüber geschrieben hat. Fehlende Werte Manchmal fehlt eine Variable für einige Beobachtungen. (Fehlende bedeutet, dass es keinen Wert gibt - die Person antwortete nicht auf die Umfragefrage oder die Daten konnten aus einem anderen Grund nicht erworben werden.) In Stata werden fehlende Werte in numerischen Variablen durch einen Punkt (.) Dargestellt. Beobachtungen mit fehlenden Werten bleiben aus Tabellen übrig, die durch Tabulatur erzeugt werden, und bleiben auch außerhalb der Regressionen. Sie erscheinen als Perioden im Stata-Datenbrowser und werden durch Perioden in Befehlen dargestellt. Fehlende Zeichenfolgenwerte erscheinen als leere Zellen im Browser und werden in Befehlen durch zwei doppelte Anführungszeichen mit nichts dazwischen dargestellt (). Was wir in den Kommandos darstellen, wird später etwas mehr Sinn machen. Wenn Sie Daten aus Excel speichern, müssen die fehlenden Werte für Stata leer gelassen worden sein, damit sie fehlen. Stata-Variablentypen Es gibt zwei Arten von Variablen in Stata: numeric und string. Eine dritte Art, Datum, ist wirklich eine besondere Art der numerischen, wie wir sehen werden. Numerische Variablen sind einfach - sie enthalten Zahlen. String-Variablen enthalten Text, der beliebige Zeichen auf der Tastatur enthalten kann: Buchstaben, Zahlen und Sonderzeichen. Bei auto3 ist make eine String-Variable - alle anderen sind numerisch. Wir können numerische Berechnungen und statistische Analysen numerischer Variablen durchführen - wir können keine String-Variablen verwenden. String-Variablen werden in der Regel als Bezeichner für die Beobachtung verwendet. Eine der numerischen Variablen, Datum, soll ein Datum darstellen - sagen wir, es war das Datum, an dem die Daten über jedes Auto gesammelt wurden. In Stata sind Datumsangaben Zahlen, die die Anzahl der Tage seit dem 1. Januar 1960 repräsentieren. Wenn wir Daten als Zahlen auf diese Weise darstellen, können wir Berechnungen an ihnen durchführen, wie etwa die Zeitdauer zwischen zwei Daten. Aber es sieht seltsam aus, und Stata hat einen einfachen Weg, um Datumsvariablen wie Datentypen aussehen zu lassen: (Der Formatbefehl hat andere Verwendungen, die man durch Eingabe des Hilfeformats sehen kann.) Sie können den Befehl di zusammen mit der Funktion d () verwenden Um den Stata-Wert eines Datums anzuzeigen: Weitere Informationen darüber, wie Stata Daten und Zeitdaten behandelt, finden Sie unter Zeitreihendaten in Stata-Variablen-Namenskonventionen Die Regeln für die Benennung von Variablen in Stata sind einfach: Bei Stata wird zwischen Groß - und Kleinschreibung unterschieden Fall-Buchstaben in Variablennamen ist eine gute Idee. Sie dürfen maximal 32 Zeichen enthalten. Sie können Buchstaben, Zahlen oder Unterstriche () enthalten. Leerzeichen oder andere Sonderzeichen (wie ,,, etc.) sind nicht zulässig. Das erste Zeichen muss ein Buchstabe oder ein Unterstrich sein, keine Zahl. Das Starten von Variablennamen mit Unterstrichen ist eine wirklich schlechte Idee, da Statas eingebaute Variablen mit einem Unterstrich beginnen. Umbenennen von Variablen Das Ändern eines Variablennamens in Stata ist mit dem Befehl rename einfach: copy 2007 Die Treuhänder der Princeton University. Alle Rechte vorbehalten. Dataprinceton. edu HINWEIS: Informationen sind für Princeton University. Fühlen Sie sich frei, die Dokumentation zu verwenden, aber wir können nicht beantworten Fragen außerhalb von Princeton Diese Seite zuletzt aktualisiert am:
No comments:
Post a Comment