5. Querschnittsanalyse via Numpy¶
balablasb
-
class
wsgi.npqa.
NpQaKlasse
(wahl_akt_id: int, wahl_alt_id: int, krit_id: int, klasse_id: int, bl: int = 0)[Quellcode]¶ Querschnittsanalyse über eine einzige Klasse. Summiert die Ergebnisse der Klasse selbst.
-
wsgi.npqa.
add_key_to_redis_keys_for_qa
(key)[Quellcode]¶ Setze den angegebenen Key mit einer value=key und einer Expirytime von REDIS_NPQAKRIT_KEY_LIFETIME_SECONDS Der Key ist ein Key von get_redis_npqakrit_key(), zB. npqakrit:132:18:16:0 Alle “npqakrit*” Keys werden bei der nächsten QA brücksichtigt und damit stehen sie dann im Cache bereit. :param key: :return:
-
wsgi.npqa.
complete_erg_arrays
= None¶ Enhält die Gemeindeergebnisse aller betroffenen Wahlen. Wird durch
np_complete_erg_array_for_wahl()
befüllt, das wiederum ininitialize()
aufgerufen wird. type: Dict[wahl_id, GemeindeErgebnis]
-
wsgi.npqa.
get_redis_npqakrit_key
(krit_id: int, wahl_alt_id: int, wahl_akt_id: int, bl: int)[Quellcode]¶ Erstelle aus den Parametern einen eindeutigen Key, indem das REDIS_NPQAKRIT_PREFIX und die Zahlen mit ”:” gejoined werden. >>> get_redis_npqakrit_key(132, 16, 18, 0) >>> ‘npqakrit:132:16:18:0’ :param krit_id: :param wahl_alt_id: :param wahl_akt_id: :param bl: :return: str
-
wsgi.npqa.
initialize
(force_reload_ergebnisse=False)[Quellcode]¶ Initialisiere alle notwendigen Datenstrukturen für die Qa:
- redis_connection
- redis_work_connection - die RedisDB, in der die QA berechnet wird, anschliessend werden alle Objekte von dort mittels mset() atomic in die richtie RedisDB geschrieben. Damit gibts immer einen konsistenten Stand.
- DEFAULT_REDIS_NPQAKRIT_KEYS - Alle NpQaKritKeys (npqakrit:132:18:16:0) die automatisch bei jeder QA berechnet werden. Default mäßig ist das eine Kombination von alle Kriterien der Hochrechnung und alte Wahl/fiktive Basis gegen neue Wahl
- KRIT_IDS_OF_KRITERIEN_WITH_KRITKLASSEN - IDs der Kriterien, deren Klassen wiederum aus Kriterien aka KritKlassen bestehen. Wird von NpQaKrit genutzt um entweder eine NpQaKlasse oder eine NpQaKritKlasse zu erzeugen
- complete_erg_arrays - Dictionary mit key=wahl_id, value=np_complete_erg_array_for_wahl, sprich alle Gemeindeergebnisse der angegebenen Wahl in einem NumPy Array.
- index_gkz - Dict von gemeinde[gkz]-> Index im complete_erg_array
- gkz_index - umgekehrt
Parameter: force_reload_ergebnisse – Rückgabe:
-
wsgi.npqa.
np_complete_erg_array_for_wahl
(wahl_id: int, bl: int = 0) → <built-in function array>[Quellcode]¶ return a numpy array mit gkz, wab, abg, gig, p01 ... p20 für alle Gemeinden der Wahl. Keine Fake Ergebnisse, sortiert nach gkz. :param wahl_id: wahl_it :param bl: Bundesland :return: np.array vom typ int32)
-
wsgi.npqa.
np_erg_array_for_gks
(a: <built-in function array>, gkzs: list) → <built-in function array>[Quellcode]¶ Return the numpy erg array with only the gkzs from the list :param a: :param gkzs: :return:
-
wsgi.npqa.
sum_np_erg_array
(a: <built-in function array>) → <built-in function array>[Quellcode]¶ Summiere alle Spalten des Arrays :param a: :return: