Codebook Skript: Anpassung und Erweiterung der Codebookerstellung

Achtung! Das Nutzen dieser Option überschreibt das aktuell hochgeladene Codebook!

Beim Datenupload und im Projekt-Backend unter Codebuch ist es möglich, Rekodierungen beim Erzeugen des Codebooks vorzunehmen. Dadurch können einige zeitintensive Arbeitsschritte automatisiert werden.

Hinweis: die Übernahme von Labeln aus einem SPSS Datensatz ist aktuell nur beim Rekodieren direkt beim Datenupload möglich. Wird die Rekodierung im Backend unter Codebuch gestartet, so werden derzeit noch die Werte direkt aus den Daten ausgelesen.

Folgende Optionen stehen bereits zur Verfügung:

Allgemeine Informationen zum Codebook Skript

Wollen Sie diese Funktion nutzen, so geben Sie einen JSON Befehl in das Feld “Codebook Script” ein. Das Feld findet sich unter Datenupload (Projekt-Backend → Datenquellen → Datenquelle auswählen → Speichern → Codebook) oder beim Codebook (Projekt-Backend → Codebook).

Bedeutung der einzelnen Attribute im Befehl:

  • “variables”: Definiert die Variablen, die verarbeitet werden sollen.
    • Variante 1: Variablennamen einzeln auflisten (z.B. var_multi_1, var_multi_2, var_multi_3)
    • Variante 2: Mit Platzhaltern (%) arbeiten. Der Ausdruck variablenname% würde alle Variablen zusammenfügen, die mit variablenname beginnen und dann beliebig weitergehen (symbolisiert durch das %-Zeichen)
      Beispiel: var_multi_% würde die unten genannten Variablen var_multi_1, var_multi_2, var_multi_3 kombinieren
  • “type”: single, union, multistack (s.u.) → definiert die Art der Umwandlung
  • “values”: Definiert die Werte, die beim typ “single” als Antwortoption behalten werden sollen, in unserem Beispiel die 1 (die 0 würde nicht berücksichtigt werden).
  • “label”: Definiert den neuen Variablennamen
  • “id”: Definiert die unique ID des neuen Frageneintrags (bitte achten Sie darauf, dass keine bereits bestehende id_unique verwendet wird). Damit wird sichergestellt, dass bei jeder Codebook-Generierung dieselbe ID vergeben wird und die Software im Dashboard nach wie vor auf die korrekte Frage (über die ID) zugreifen kann.

Die folgenden Optionen stehen zur Verfügung:

Mehrfachantworten automatisch zu am Dashboard darstellbaren Charts umkodieren

Allgemeine Informationen zur Visualisierung von Mehrfachnennungen finden Sie hier. Das hier beschriebene Feature automatisiert den dort beschriebenen manuellen Prozess.

Je nachdem, wie Ihre Mehrfachnennung in den Daten gespeichert ist, wählen Sie bitte die entsprechende Option.

1. Option: Eine Datensatzspalte pro möglicher Kategorie (binary)

Kontext: Im Datensatz ist eine Spalte pro möglicher Kategorie (z.B. Marke; als 0/1 kodiert) angelegt. 

Befehl:
[{"combine": [{"variables": ["Brand%"], "values": [1], "type": "single", "label": "New question single", "id": 100000}]}]

Wählen Sie “type”: “single” für diese Art der Frage und definieren Sie, welche Werte als “ausgewählt” behandelt werden, z.B. “values”: [1]

2. Option: Eine Datensatzspalte pro Nennung (max-multi)

Kontext: Im Datensatz ist eine Spalte für jede Nennung (1. Nennung, 2. Nennung,3. Nennung,…) angelegt. Die Spalten enthalten die genannten Kategorien (als Text oder Wert, z.B. MarkeA =1, MarkeB = 2, MarkeC = 3,…).

Befehl:
[{"combine": [{"variables": ["var_multi_%"], "type": "union", "label": "New question OR", "id": 100000}]}]

Wählen Sie “type”: “union” für diese Art der Frage

Fragebatterien automatisch zu am Dashboard darstellbaren gestapelten Charts umkodieren

Wollen Sie mehrere Fragen mit denselben Ausprägungen zu einem gestapelten Diagramm zusammenfügen, so ist auch das nun automatisiert möglich:

Befehl:

[{"combine": [{"variables": ["var_stack_1", "var_stack_2", "var_stack_3"], "type": "multistack", "label": "New question multistack", "id": 100000}]}]

Neue Variablen mit einer SQL Formel berechnen

Wollen Sie neue Variablen berechnen, so können Sie dies mit Hilfe von SQL-Berechnungen umsetzen.

Befehl:

[{"add": [{"values": ["{{= AVG(var_item) }}"], "question_label": "Average", "labels": ["var_item"], "id": 100000}]}]

Weitere Information zu SQL-Berechnungen finden Sie hier.

Fragen nicht in das Codebook aufnehmen

Wollen Sie bestimmte Fragen nicht im Codebook angezeigt bekommen, so können Sie diese wie folgt von der Übernahme ins Codebook ausschließen.

Befehl:

[{"exclude": [{"variables": ["var_multi_%"]}]}]

Mehrere Befehle kombinieren

Um die Struktur zu verdeutlichen, wird der JSON im folgenden über mehrere Zeilen verteilt und farbig voneinander abgehoben. Text nach einem # sind Kommentare.
Bitte beachten Sie, dass im Projekt keine Zeilenumbrüche vorhanden sein dürfen.

Grundsätzlich gilt: Befehle desselben Typs (z.B. combine) werden in geschwungenen Klammern hinter dem Befehl durch Kommata getrennt innerhalb einer eckigen Klammer gelistet. Unterschiedliche Befehle (z.b. combine und add) werden jeweils in geschwungenen Klammern und durch Kommata getrennt hintereinander gelistet.

Beispiel:

[ #Beginn des JSON

{ „combine“: [ #Beginn aller combine Befehle

{„variables“: [„Brand%“], „values“: [1], „type“: „single“, „label“: „New question single“, „id“: 100000},

{„variables“: [„Brand%“], „values“: [1], „type“: „single“, „label“: „New question single 2“, „id“: 100050},

{„variables“: [„var_multi_%“], „type“: „union“, „label“: „New question OR“, „id“: 100100},

{„variables“: [„var_stack_1“, „var_stack_2“, „var_stack_3“], „type“: „multistack“, „label“: „New question multistack“, „id“: 100200} #verschiedene combine Befehle jeweils innerhalb von geschwungenen Klammern durch Kommata getrennt

]}, #Ende combine Befehle

{„add“: [ # Beginn add Befehle

{„values“: [„{{= AVG(var_item1) }}“], „question_label“: „Average“, „labels“: [„var_item“], „id“: 100300}

]},

{„exclude“: [

{„variables“: [„var_multi_%“], „id“: 100400}

]}

]


Zusammengefasst:

[ { "combine": [{"variables": ["Brand%"], "values": [1], "type": "single", "label": "New question single", "id": 100000}, {"variables": ["Brand%"], "values": [1], "type": "single", "label": "New question single 2", "id": 100050}, {"variables": ["var_multi_%"], "type": "union", "label": "New question OR", "id": 100100}, {"variables": ["var_stack_1", "var_stack_2", "var_stack_3"], "type": "multistack", "label": "New question multistack", "id": 100200}]}, {"add": [{"values": ["{{= AVG(var_item1) }}"], "question_label": "Average", "labels": ["var_item"], "id": 100300} ]}, {"exclude": [{"variables": ["var_multi_%"], "id": 100400}]} ]