Fehlermeldung "type mismatch"

Fragen zu Stata Syntax und Do-Files.

Fehlermeldung "type mismatch"

Beitragvon Luka » Mo 20. Jun 2022, 09:35

Hallo Zusammen,

wenn ich folgenden Befehl ausführe kommt folgender Fehlermeldung :

gen var=date(var1, "YMD")
type mismatch

Wie gehe ich mit diesem Fehler um?

Vielen Dank im Voraus!
Luka
 
Beiträge: 12
Registriert: Sa 18. Jun 2022, 11:15
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Fehlermeldung "type mismatch"

Beitragvon Staxa » Mo 20. Jun 2022, 09:36

Code: Alles auswählen
help date

"s1 contains the date, recorded as a string"

var1 muss in diesem Fall eine Stringvariable sein.
Stata für Anfänger: www.statabook.com
Staxa
 
Beiträge: 679
Registriert: Di 27. Feb 2018, 12:56
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Fehlermeldung "type mismatch"

Beitragvon Luka » Mo 20. Jun 2022, 16:53

Ich habe wieder das Problem, allerdings lässt sich dieses nicht mit einer Umwandlung einer Variable in string lösen. Var 1 ist eine stringvariable aber var2 kann nicht in string umgewandelt werden. Es kommt wieder die Fehlermeldung "type mismatch". Was ich hier versuche zu machen ist aus 2 Variablen eine zu erstellen, die eine Kombination aus den beiden ist.
So lautet mein Befehl:
generate var3 = var1tr + " " + var2

Wie kann ich diesen Fehler beheben?
Luka
 
Beiträge: 12
Registriert: Sa 18. Jun 2022, 11:15
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Fehlermeldung "type mismatch"

Beitragvon Staxa » Mo 20. Jun 2022, 18:11

Was ist denn Var2 für eine Variable?

Möglich etwa:

Code: Alles auswählen
generate var3 = var1tr + " " + string(var2)
Stata für Anfänger: www.statabook.com
Staxa
 
Beiträge: 679
Registriert: Di 27. Feb 2018, 12:56
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Fehlermeldung "type mismatch"

Beitragvon Luka » Mo 20. Jun 2022, 19:54

Ich gerade noch ein Fehler festgestellt und zwar Var1tr, die sollte die Stringvariable darstellen enthält komische Werte, wie z.B.:
Var1 Var2tr
02jan2015 20585

Ich kann nur Var1 im Format 2015-01-02 bringen, Var2tr kann ich nicht in dem Format bringen
Im Prinzip muss ich eine Datumsvariable erstellen mit Var1 und wollte ich mit gen var =date(Var1, "YMD")
Aber es kommt die Fehlermeldung "type mismatch" .

Ich brauche dringend Hilfe, ich verstehe nicht warum diese Codes bei mir nicht funktionieren.
Luka
 
Beiträge: 12
Registriert: Sa 18. Jun 2022, 11:15
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Fehlermeldung "type mismatch"

Beitragvon Luka » Mo 20. Jun 2022, 19:58

Var1tr stellt die Stringdatumsvariable, Type str5, Format %9s
Var2 ist eine Zeitvariable gegeben in Stunden Minuten und Sekunden wie zum Beispiel 00:20:53, Type double, Format %tcHH:MM:SS
Luka
 
Beiträge: 12
Registriert: Sa 18. Jun 2022, 11:15
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Fehlermeldung "type mismatch"

Beitragvon Staxa » Di 21. Jun 2022, 08:50

Vielleicht willst du mal ein Datenbeispiel zeigen mittels dataex.
Stata für Anfänger: www.statabook.com
Staxa
 
Beiträge: 679
Registriert: Di 27. Feb 2018, 12:56
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Fehlermeldung "type mismatch"

Beitragvon Luka » Di 21. Jun 2022, 09:41

Anwendung von dataex:

* Example generated by -dataex-. For more info, type help dataex
clear
input long Var1 str5 Var1str
20831 "20831"
20849 "20849"
20849 "20849"
20849 "20849"
20859 "20859"
20860 "20860"
20864 "20864"
20867 "20867"
20901 "20901"
20907 "20907"
20914 "20914"
20934 "20934"
20935 "20935"
20935 "20935"
20935 "20935"

wenn ich describe verwende:

Var1 long %td
Var1str str5 %9s

wenn ich browse:

Var1 Var1str
12jan2017 20831
30jan2017 20849
30jan2017 20849
30jan2017 20849
09feb2017 20859


Also nochmal, das Hauptproblem ist, dass ich Var1 in string umwandeln möchte, damit der Befehl gen var = date(Var1,"YMD") funktioniert. Aber die Stringvariable Var1str enthält komische Werte und kann auch das Format der Stringvariable nicht ändern.
Luka
 
Beiträge: 12
Registriert: Sa 18. Jun 2022, 11:15
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Fehlermeldung "type mismatch"

Beitragvon Staxa » Di 21. Jun 2022, 10:25

Dann wandel doch zuerst den String in eine Zahl:

Code: Alles auswählen
destring Var1str, replace force


format Varstr1 %td

Und was genau willst du damit nun berechnen? Das sind jetzt jeweils 2 Daten.
Stata für Anfänger: www.statabook.com
Staxa
 
Beiträge: 679
Registriert: Di 27. Feb 2018, 12:56
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Fehlermeldung "type mismatch"

Beitragvon Luka » Di 21. Jun 2022, 10:36

ich will diesen Befehl ausführen: gen var = date(Var1,"YMD")
wegen Fehlermeldung type mismatch, meintest du Var1 muss string sein. Wenn ich tostring Var1 nehme, kommen da keine richtigen Werte raus (siehe obige Beschreibung)
Luka
 
Beiträge: 12
Registriert: Sa 18. Jun 2022, 11:15
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Nächste

Zurück zu Stata Syntax

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron