0 votes
in SoSci Survey (dt.) by s109993 (12.0k points)

Ich habe eine Reihe von MCM Variablen, manche werden durch Filter übersprungen. Dann bekommen Sie ja ein Missing by Design (leeres Feld). Kann ich einer MCM Variable den Wert "1" geben, falls diese übersprungen wird? Also quasi den gleichen Wert, wie wenn nicht ausgewählt.

1 Answer

0 votes
by SoSci Survey (327k points)
edited by SoSci Survey
 
Best answer

Sie können im (PHP-)Filter mittels put() einen Wert zuweisen:

if (value('AB01') == 1) {
  // Frage anzeigen
  question('MC01');
} else {
  // Alternative Werte setzen
  put('MC01', -1, true);
}

Alterantiv können Sie in der Auswertung die ausgeblendeten Variablen mit einem Wert belegen, abhängig von der entsprechenden Filterfrage.

by s109993 (12.0k points)
edited by s109993
Danke sehr, put() hat mir gefehlt, ich dachte, dass das nur mit internen Variablen funktioniert.

EDIT: vielleicht habe ich sie falsch Verstanden. ich bekomme die fehlermeldung: "Der Befehl put() kann nur in eine interne Variable speichern. Die Frage A009 ist nicht vom Typ "Interne Variablen"."

Ich habe super komplexe Filter, und ich arbeite nicht gerne mit != 2. Das muss ich allerdings, wenn einige Mehrfachauswahlfragen übersprungen werden, da dort "not selected" mit einem leeren String abgespeichert wird. Das ist zwar normalerweise gut so, aber in meinem Fall etwas nervig.
by SoSci Survey (327k points)
> Die Frage A009 ist nicht vom Typ "Interne Variablen"."

Pardon, ich hatte im Beispiel-Code das "true" als dritten Parameter vergessen (nun oben ergänzt). Dieser erlaubt auch das Setzen von anderen als internen Variablen. Standardmäßig wird das gesperrt, weil man damit natürlich auch ungewollt Antworten der Befragten überschreiben könnte.

> Das muss ich allerdings, wenn einige Mehrfachauswahlfragen übersprungen werden, da dort "not selected" mit einem leeren String abgespeichert wird.

Wenn eine Mehrfachauswahl angezeigt und nicht ausgewählt wurde, wird eine 1 gespeichert. Wenn sie nicht abgefragt wurde, der leere String, korrekt. Wobei ein != 2 aus meiner Perspektive nicht schlechter ist als eine Prüfung auf Gleichheit.
by s109993 (12.0k points)
"Wobei ein != 2 aus meiner Perspektive nicht schlechter ist als eine Prüfung auf Gleichheit."
das stimmt, allerdings habe ich den Code schon mit ==1 programmiert, und zu spät meinen Denkfehler bemerkt :)

Willkommen im Online-Support von SoSci Survey.

Hier bekommen Sie schnelle und fundierte Antworten von anderen Projektleitern und direkt von SoSci Survey.

→ Eine Frage stellen


Welcome to the SoSci Survey online support.

Simply ask a question to quickly get answers from other professionals, and directly from SoSci Survey.

→ Ask a Question

...