Welcome to the LimeSurvey Community Forum

Ask the community, share ideas, and connect with other LimeSurvey users!

Offene numerische Antworten automatisch kategorisieren

  • skofield
  • skofield's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
3 years 11 months ago #199589 by skofield
Hallo,

habe eine kurze Frage. Ist es möglich, dass ich das Alter offen numerisch abfrage und dann gleich in Alterskategorien einteile? Ich würde dieses Workaround "brauchen", da ich mit einem Panelanbieter zusammenarbeite und ich daher Quoten setzen muss. Natürlich könnte ich das Alter gleich in Kategorien abfragen aber wenn es irgendwie möglich ist würde ich es gern offen machen, um bei der Analyse flexibel mit den Altersgruppen arbeiten zu können.

Danke
Bernd
The topic has been locked.
  • holch
  • holch's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 years 11 months ago #199593 by holch
Dazu brauchst du zwei zusätzliche Fragen, die du aber versteckst.

Einmal eine Frage mit den Alterskategorien Typ "List (Radio)" und dann noch eine "Equation" (auf Deutsch Formel?").

In der Equation fragst du dann das Alter aus der offenen numerischen Abfrage ab und checkst in welche Alterskategorie die Person gehört und "markierst" mit der Equation quasi die Alterskategorie in der Frage "List (Radio)".

Ich kenne deine Fragencodes nicht. Aber nehmen wir mal an, dass die erste Frage mit dem Alter den Fragencode "alter" hat.

Die zweite Frage mit den Kategorien nenne ich mal alter2 mit den Antwortoptionen mit den jeweiligen Codes: 0-18 (1), 19-30 (2), 31-50 (3), 51+ (4),

In der Equation steht dann irgend sowas (nicht getestet, nur eine Basisidee):
Code:
{if(alter > 50, alter2=4,if(alter > 30, alter2=3,if(alter > 18, alter2=2,1)))}

Dieser Code fragt eben ab, welches Alter angegeben wurde und checkt dann ob die Person älter als 50 ist, wenn ja dann markiert er die Kategorie 4, wenn nicht checkt er ob die Person älter als 30 ist, wenn ja, dann markiert er Kategorie 3, usw. bis zur letzten Abfrage, ob die Person älter als 18 ist. Wenn sie das auch nicht ist, dann brauchen wir nicht weiter fragen, die Person muss unter 18 sein, weil alles darüber haben wir ja schon abgefragt.

Die Equation und die List (Radio) versteckst du über die entsprechende Einstellung in den Fragenoptionen (aber erst nachdem du ausführlich getestet hast und gesehen hast, dass alles ordentlich funktioniert. Manche verstecken die Fragen sofort und finden dann ihre Fehler natürlich nie.

Auf diese List (Radio) kannst du dann mit Quoten zugreifen.

I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.

The topic has been locked.
  • skofield
  • skofield's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
3 years 11 months ago #199595 by skofield
Super! Vielen, vielen dank, holch! Werd das morgen gleich ausprobieren.
The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 years 11 months ago #199630 by Joffm
Noch eine kleine Ergänzung.

Du willst die Klasseneinteilung des Alters ja nicht noch einmal anzeigen.
Dann benötigst Du die Einfachnennungsfrage nicht.
Eine Frage vom Typ "Gleichung" genügt.
Nenne sie - wie gesagt - "alter2" mit Folgendem:
{if(alter > 50, 4,if(alter > 30, 3,if(alter > 18, 2,1)))}
Dann:
1. Ist in der Antwort-Tabelle eine Spalte "alter2" mit dem berechneten Wert
2. Kannst Du Deine Quote auf die Frage "alter2" setzen.

Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless
The topic has been locked.
  • skofield
  • skofield's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
3 years 11 months ago - 3 years 11 months ago #199649 by skofield
Danke, Joffm. Das funktioniert soweit, nur müsst ich in die Gleichung noch einbauen, dass wenn alter noch leer ist, nicht eine 1 gesetzt wird. Sonst leitet mir bei Start die Quote alter = 1 zu meinem Panelanbieter zurück, da ich hier eine Quote von 0 hab.
Last edit: 3 years 11 months ago by skofield.
The topic has been locked.
  • holch
  • holch's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 years 11 months ago #199660 by holch

Du willst die Klasseneinteilung des Alters ja nicht noch einmal anzeigen.
Dann benötigst Du die Einfachnennungsfrage nicht.
Eine Frage vom Typ "Gleichung" genügt.


Kann man Quoten jetzt auch auf Equation / Gleichungen anwenden? Ging zumindest früher nicht. Falls das jetzt geht, weisst du seit welcher Version?

I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.

The topic has been locked.
  • holch
  • holch's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 years 11 months ago #199662 by holch

Das funktioniert soweit, nur müsst ich in die Gleichung noch einbauen, dass wenn alter noch leer ist, nicht eine 1 gesetzt wird. Sonst leitet mir bei Start die Quote alter = 1 zu meinem Panelanbieter zurück, da ich hier eine Quote von 0 hab.


Deine Altersfrage ist doch sicher eine Pflichtfrage? D.h. wenn die Frage angezeigt wurde und man im Fragebogen weiter gegangen ist, dann muss da zwingend was drin stehen. Also sollte dein Fall gar nicht auftauchen. Also beschreibe doch mal, in welchem Szenario es passieren kann, dass die Frage leer ist und die Quote das dann als Null nimmt.

Es kann also eigentlich nur passieren, wenn die Gleichung auf der gleichen "Seite" gesetzt ist wie deine Altersfrage. Aber da sollte meiner Meinung nach eigentlich erst die Fehlermeldung für die leere Altersfrage kommen, bevor die Quote getriggert wird. Oder?

I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.

The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 years 11 months ago - 3 years 11 months ago #199664 by Joffm

Kann man Quoten jetzt auch auf Equation / Gleichungen anwenden? Ging zumindest früher nicht. Falls das jetzt geht, weisst du seit welcher Version?


Gerade ausprobiert.
In 2.50/2.73 ging es nicht, aber in 3.x

Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless
Last edit: 3 years 11 months ago by Joffm.
The topic has been locked.
  • holch
  • holch's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 years 11 months ago #199666 by holch

In 2.50/2.73 ging es nicht, aber in 3.x


Cool, muss irgendwie an mir vorbei gegangen sein. Ist ja auch sehr sinnvoll, dass man die Quote direkt auf die Gleichung setzen kann, ohne den Umweg über eine weitere versteckte Frage.

I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.

The topic has been locked.
  • skofield
  • skofield's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
3 years 10 months ago #200804 by skofield
Entschuldigt meine späte Antwort. War recht beschäftigt. Es war seltsam. Ja, die Gleichung war auf der selben Seite wie die Altersabfrage. Die Bedingung war, dass wenn jemand unter 15 war, er gleich zurück zu meinen Panelpartner geschickt wurde und die Umfrage somit beendet war. Aus irgendeinem Grund wurde das gleich beim Aufruf des Surveys "getriggert" und man wurde gleich zurückgeschickt. Hab die Formel dann weggelassen und das Problem anders gelöst.
The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
3 years 10 months ago #200873 by Joffm

Aus irgendeinem Grund wurde das gleich beim Aufruf des Surveys "getriggert" und man wurde gleich zurückgeschickt. Hab die Formel dann weggelassen und das Problem anders gelöst.


Nein, nicht aus "irgendeinem Grund". Das ist der normale Lauf der Dinge.
Daher ja auch das {if(is_empty(random),rand(1,10),random)}, damit es falls diese Gleichung mit mehreren Fragen in einer Gruppe ist, diese nicht jedesmal geändert wird.

In Deinem Fall war es dann z.B. so, dass bei
{if(alter > 50, 4,if(alter > 30, 3,if(alter > 18, 2,1)))} die "1" getriggert wird, obwohl noch kein Alter eingegeben war.

Klar, dass muss man berücksichtigen.

Aber gut, dass Du eine Lösung gefunden hast.

Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless
The topic has been locked.
  • skofield
  • skofield's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
3 years 10 months ago #200874 by skofield

Nein, nicht aus "irgendeinem Grund". Das ist der normale Lauf der Dinge.


Aus einem Grund, den ich nicht kannte.

Danke für die Hilfe.
The topic has been locked.
Moderators: Joffm

Lime-years ahead

Online-surveys for every purse and purpose