Zahlen in Freitext-Antwort herausfiltern?

Alles rund um SPSS Syntax und Programmierung.

Zahlen in Freitext-Antwort herausfiltern?

Beitragvon heymax » Mi 15. Aug 2018, 10:02

Hallo zusammen,

im Rahmen meiner Masterarbeit habe ich eine Umfrage auf einem Online-Shop mit ingesamt 4000 Teilnehmern durchführen können.
Leider hatte ich in der Fragebogenkonzeption eine Sache nicht durchdacht und stehe nun vor folgender Herausforderung.

Der Teilnehmer wurde für ein Produkt gebeten einen Preis in Euro anzugeben. Da es ein Freitext war, konnten die Teilnehmer natürlich alles was sie wollten eingeben.

Beispiele für die Eingaben waren:

50,00
Fünzig
Ich würde 50 euro zahlen
FÜNFZICH
€ 50
50 €

Ich möchte gerne den Durchschnitt berechnen, aber dafür muss ich natürlich alle Werte in einer gleichen Form vorliegen haben.
Nun die Frage: Wie gehe ich da am besten vor?

Mir ist natürlich klar, dass Antworten wie «Fünfzig» von mir händisch umgeschrieben werden müssen. Da aber 80% der Antworten Zahlen enthalten, gehe ich davon aus, dass für diese bestimmt eine elegante Lösung gibt?

Freue mich auf eure Rückmeldung und bin für jede Antwort sehr dankbar.

Viele Grüße,
Max
heymax
 
Beiträge: 4
Registriert: Do 2. Aug 2018, 13:52
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Zahlen in Freitext-Antwort herausfiltern?

Beitragvon ponderstibbons » Mi 15. Aug 2018, 11:14

Superkrude, aber ich habe momentan keine Lust, was mit LOOP oder VECTOR zu programmieren:

Die Ausgangsvariable sei hier zahlbereit genannt und eine Länge von 32 angenommen (Namen und Länge den tatsächlichen Gegebenheiten anpassen).

*** Neue Variable bilden, mit Daten in Kleinschreibung:
STRING zahlbereit2 (A32) .
COMPUTE zahlbereit2=LOWER(zahlbereit).
EXECUTE.

***Ersetze Zeichen durch Leerzeichen (hier nur exemplarisch für einige Buchstaben/Zeichen - Handarbeit mit copy-paste erforderlich)
STRING zahlbereit.zahl (A32) .
COMPUTE zahlbereit.zahl=REPLACE(zahlbereit2,"a"," ").
EXECUTE.
**** Achtung, nun Änderung der Variable in der Klammer nach REPLACE .
COMPUTE zahlbereit.zahl=REPLACE(zahlbereit.zahl,"b"," ").
EXECUTE.
COMPUTE zahlbereit.zahl=REPLACE(zahlbereit.zahl,"c"," ").
EXECUTE.
*** (etc.) .
COMPUTE zahlbereit.zahl=REPLACE(zahlbereit.zahl,"z"," ").
EXECUTE.

COMPUTE zahlbereit.zahl=REPLACE(zahlbereit.zahl,"€"," ").
EXECUTE.

COMPUTE zahlbereit.zahl=REPLACE(zahlbereit.zahl,"!"," ").
EXECUTE.

****Leerzeichen loswerden
COMPUTE zahlbereit.zahl=LTRIM(zahlbereit.zahl).
EXECUTE.
COMPUTE zahlbereit.zahl=RTRIM(zahlbereit.zahl).
EXECUTE.

****Numerische Variable bilden
COMPUTE zahlbereitschaft=NUMBER(zahlbereit.zahl,F3).
EXECUTE.


Mit freundlichen Grüßen

PonderStibbons
ponderstibbons
 
Beiträge: 2479
Registriert: Sa 1. Okt 2011, 17:20
Danke gegeben: 1
Danke bekommen: 256 mal in 255 Posts

Re: Zahlen in Freitext-Antwort herausfiltern?

Beitragvon heymax » Do 16. Aug 2018, 18:21

Hi PonderStibbons,

vielen Dank für deine Hilfe! Ich habe dein Vorgehen verstanden, nur leider klappt es nicht. Jedes mal wenn SPSS ein Buchstaben mit einem Leerzeichen ersetzt, wird mit dem nächsten Befehl das Zeichen von dem Schritt zuvor wieder zurückgeholt und dafür das neue Zeichen gelöscht.

Bsp.

500 euro

COMPUTE Q14.zahl=REPLACE(EURO_MM,"e"," ").
EXECUTE

-> 500 uro

COMPUTE Q14.zahl=REPLACE(EURO_MM,"r"," ").
EXECUTE

-> 500 eu o

--- leider fügt er immer wieder das zuletzt gelöscht Zeichen wieder ein :(. Woran kann das liegen?
heymax
 
Beiträge: 4
Registriert: Do 2. Aug 2018, 13:52
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Zahlen in Freitext-Antwort herausfiltern?

Beitragvon heymax » Do 16. Aug 2018, 19:53

… ich war zu dumm zum richtig lesen. Hat funktioniert! Vielen lieben Dank! :P
heymax
 
Beiträge: 4
Registriert: Do 2. Aug 2018, 13:52
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post

Re: Zahlen in Freitext-Antwort herausfiltern?

Beitragvon ponderstibbons » Fr 17. Aug 2018, 09:16

Ich hätte sicherheitshalber auf den Wechsel beim 2. REPLACE hinweisen sollen, ist tatsächlich leicht zu übersehen. Habe das nun eingefügt.
ponderstibbons
 
Beiträge: 2479
Registriert: Sa 1. Okt 2011, 17:20
Danke gegeben: 1
Danke bekommen: 256 mal in 255 Posts

Re: Zahlen in Freitext-Antwort herausfiltern?

Beitragvon heymax » Fr 17. Aug 2018, 09:47

Ja genau da lag mein Fehler :).Danke dir!
heymax
 
Beiträge: 4
Registriert: Do 2. Aug 2018, 13:52
Danke gegeben: 0
Danke bekommen: 0 mal in 0 Post


Zurück zu SPSS Syntax

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast