Variablen generieren und in andere Datei umleiten in Stata

Fragen, die sich auf kein spezielles Verfahren beziehen.

Variablen generieren und in andere Datei umleiten in Stata

Beitragvon mango » Do 29. Jan 2015, 19:45

Hallo,

ich möchte mit Stata Zeitreihendaten aus Spelldaten generieren. Da es dabei nicht mit der Generierung zusätzlicher Variablen getan ist sondern die Struktur der Daten eine völlig andere ist, möchte ich meine gen- und egen-Kommandos gerne direkt in eine neue Datei umleiten. Leider kann ich weit und breit keine Möglichkeit finden, mit Stata-Kommandos mehrere Dateien miteinander zu verbinden sondern Kommandos scheinen grundsätzlich nur auf genau eine vorher mit use definierte Datei anwendbar sein. Das einzige, was mir einfallen würde, wäre die komplizierte Auslagerung der zu verarbeitenden Daten in den Zwischenspreicher mit Matrizen aber das scheint mir wirklich sehr umständlich zu werden. Kennt jemand einen besseren Weg?
mango
Elite
Elite
 
Beiträge: 330
Registriert: Fr 2. Mai 2014, 16:55
Danke gegeben: 3
Danke bekommen: 55 mal in 55 Posts

Re: Variablen generieren und in andere Datei umleiten in Sta

Beitragvon mango » Fr 30. Jan 2015, 17:33

Ich habe jetzt mal folgendes probiert:

Code: Alles auswählen

*********In andere Datei umlenken
******Anfängliche Konfiguration
*Verzeichnis auswählen
cd "C:\users\user\Verzeichnis"
*Quelldatei aufrufen
use datei1
*Schleifendurchgänge zählen. Anfangswert einstellen
scalar counter=1

******Schleife
*Alle Werte von Minimum bis Maximum durchgehen
forval i=1/200000  {
*Kontrolle, ob die Schleife läuft
display "Schleife beginnt"
*Zeilen zählen, in denen die Variable den jeweiligen i-Wert annimmt
count if var0==`i'
*Count-Ergebnis als j zwischenspeichern
scalar j = r(N)
*Zieldatei öffnen
use testdatei
*In die erste Variable speichern, zu welchem i der j-Wert gehört. Counter dient dazu, jeden Wert in eine neue Zeile einzutragen
replace var1[`counter']=`i'
*In die zweite Variable den j-Wert speichern
replace var2[`counter']=`j'
*Zieldatei abspeichern
save testdatei
*Quelldatei wieder öffnen
use datei1
*Kontrollzähler um eins erhöhen
scalar counter=counter+1
*Schleifendurchgang anzeigen
display counter
}



Ausgelesen soll aus datei1.dta und abgespeichert werden soll in testdatei.dta. Die Quellvariable ist var0 in datei1.dta. Sie hat das Minimum 1 und das Maximum 200000. Ich möchte nun in testdatei.dta für jeden vorhandenen Wert dessen absolute Häufigkeit in var0 speichern.

Ich habe einen Weg gefunden, Stata darauf zu programmieren. Es hapert aber noch an der korrekten Übersetzung in Stata-Code. Mit dem oben eingefügten Code erhalte ich die Fehlermeldung "incorrect syntax". Kann mir jemand sagen warum?
mango
Elite
Elite
 
Beiträge: 330
Registriert: Fr 2. Mai 2014, 16:55
Danke gegeben: 3
Danke bekommen: 55 mal in 55 Posts


Zurück zu Allgemeine Fragen

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 11 Gäste

cron