Hallo
Ich habe bei einer Umfrage eine verbundene Quote (Geschlecht x Alter), die dank Ihrer Anleitung auch wunderbar funktioniert.
Die Quote ist jedoch aktuell so eingestellt, dass wenn Leute beim Gechlecht "divers" (Wert 3) angeben ausgescreent werden.
Jetzt meinte aber meine Chefin, dass das nicht so sein soll und ich die "diversen" zufällig auf Männer und Frauen verteilen soll. Und da ist jetzt mein Problem, ich komme da nicht weiter!
Es müsste wie ein if value SD02 ==3 -> dann in 1 oder 2 umkodieren. Aber ich kenne mich mit den PHP codes einfach noch viel zu wenig aus, als dass ich eine ahnung hätte, wie man das machen könnte.
Ist das überhaupt möglich? Und wenn ja, wie?
Oder gibt es da eine elegantere Lösung?
Vielen lieben Dank!
Liebe Grüsse
Hier ist übrigens mein Code für die Quote bis jetzt (die redirect-Links sind noch Platzhalter zum schauen ob es funktioniert, deswegen sind die komisch, nicht beachten):
$quota = [
'2-1' => 50, '2-2' => 50, // 50 Personen pro Geschlecht für die Altersgruppe 1
'3-1' => 50, '3-2' => 50, // 50 Personen pro Geschlecht für die Altersgruppe 2
'4-1' => 50, '4-2' => 50, // 50 Personen pro Geschlecht für die Altersgruppe 3
'5-1' => 50, '5-2' => 50, // 50 Personen pro Geschlecht für die Altersgruppe 4
'6-1' => 50, '6-2' => 50, // 50 Personen pro Geschlecht für die Altersgruppe 5
'7-1' => 50, '7-2' => 50 // 50 Personen pro Geschlecht für die Altersgruppe 6
];
// Geschlecht wird direkt ausgelesen
$gender = value('SD02');
// Das Alter wird umkodiert
$age = value('SD07_01');
if ($age < 18) {
$ageGroup = 1;
} elseif ($age <= 29) {
$ageGroup = 2;
} elseif ($age <= 39) {
$ageGroup = 3;
} elseif ($age <= 49) {
$ageGroup = 4;
} elseif ($age <= 59) {
$ageGroup = 5;
} elseif ($age <= 69) {
$ageGroup = 6;
} else {
$ageGroup = 7;
}
// Definition einer Variable mit Altesgruppe und Geschlecht
// Aus 3 und 2 wird hier \3-2\
$demGroup = $ageGroup.'-'.$gender;
// Abruf der vorliegenden Fälle für diese Merkmalsausprägung
$cases = statistic('count','IV03_01',$demGroup);
// Screenout
if (!array_key_exists($demGroup, $quota)) {
redirect('https://www.linguee.de/englisch-deutsch/uebersetzung/screen+out.html');
}
// Auslesen der Quote für die demografische Gruppe
$maxPerGroup = $quota[$demGroup];
// Quotenstopp
if ($cases >= $maxPerGroup) {
redirect('https://support.soscisurvey.de/?qa=20808/quotenstopp-und-redirect');
}