Initialversion: Forschungsprojekte 'HRT meets' und 'Grundsymbole' integriert
This commit is contained in:
@ -0,0 +1,86 @@
|
||||
## **Um die statistischen Analysen in dein bestehendes Modell einzufügen, darunter die Berechnung von Konfidenzintervallen und das Erstellen von Histogrammen zur Visualisierung der Endkompetenzwerte, kannst du den Code wie folgt erweitern:**
|
||||
## **Ergänzung zum Code**
|
||||
## **Nach der Simulation und grundlegenden Analyse können die folgenden Schritte implementiert werden:**
|
||||
Berechnung von Konfidenzintervallen für den mittleren Kompetenzwert am Ende der Simulationsperiode.
|
||||
- Erstellung von Histogrammen der Endkompetenzwerte, um die Verteilung zu visualisieren.
|
||||
## **Hier ist der vollständige Code mit den zusätzlichen statistischen Analysen:**
|
||||
python
|
||||
|
||||
<p style="text-align:center;margin:0">
|
||||
</p>
|
||||
Copy code
|
||||
import numpy as np
|
||||
import pandas as pd
|
||||
import matplotlib.pyplot as plt
|
||||
import scipy.stats as stats
|
||||
|
||||
# Definiere die Startbedingungen und Parameter
|
||||
start_kompetenz = 1.25
|
||||
quartale = 12
|
||||
bereitschafts_std = 0.1
|
||||
bereitschafts_steigerung_phase = {
|
||||
'Anpassung': -0.1,
|
||||
'Verfestigung': 0.2,
|
||||
'Wachstum': 0.5,
|
||||
'Plateau': 0.7
|
||||
}
|
||||
|
||||
# Funktionen zur Anpassung der Bereitschaft, Motivation und Neugier
|
||||
def anpassung_der_bereitschaft(aktuelles_quartal):
|
||||
if aktuelles_quartal <= 4:
|
||||
return bereitschafts_steigerung_phase['Anpassung']
|
||||
elif 5 <= aktuelles_quartal <= 6:
|
||||
return bereitschafts_steigerung_phase['Verfestigung']
|
||||
elif 7 <= aktuelles_quartal <= 10:
|
||||
return bereitschafts_steigerung_phase['Wachstum']
|
||||
else:
|
||||
return bereitschafts_steigerung_phase['Plateau']
|
||||
|
||||
def motivation(aktuelles_quartal):
|
||||
if aktuelles_quartal == 8:
|
||||
return -0.3
|
||||
elif aktuelles_quartal == 12:
|
||||
return 0.4
|
||||
return 0
|
||||
|
||||
def neugier(aktuelles_quartal, start_kompetenz):
|
||||
if start_kompetenz < 5:
|
||||
return 0.2 if aktuelles_quartal <= 6 else -0.1
|
||||
return 0.1 if aktuelles_quartal <= 6 else -0.05
|
||||
|
||||
# Simulation der Kompetenzentwicklung
|
||||
simulations_durchläufe = 1000
|
||||
ergebnisse = pd.DataFrame()
|
||||
|
||||
for durchlauf in range(simulations_durchläufe):
|
||||
kompetenz = [start_kompetenz]
|
||||
for quartal in range(1, quartale + 1):
|
||||
steigerung = anpassung_der_bereitschaft(quartal) + motivation(quartal) + neugier(quartal, start_kompetenz)
|
||||
bereitschaft = np.random.normal(steigerung, bereitschafts_std)
|
||||
neue_kompetenz = np.clip(kompetenz[-1] + bereitschaft, 1, 10)
|
||||
kompetenz.append(neue_kompetenz)
|
||||
ergebnisse[f'Quartal_{durchlauf}'] = kompetenz
|
||||
|
||||
# Berechnung von Konfidenzintervallen
|
||||
end_kompetenzen = ergebnisse.iloc[-1]
|
||||
mittelwert = end_kompetenzen.mean()
|
||||
std_abweichung = end_kompetenzen.std()
|
||||
konfidenzintervall = stats.norm.interval(0.95, loc=mittelwert, scale=std_abweichung / np.sqrt(len(end_kompetenzen)))
|
||||
|
||||
# Visualisierung von Histogramm der Endkompetenz
|
||||
plt.figure()
|
||||
plt.hist(end_kompetenzen, bins=10, color='blue', alpha=0.7)
|
||||
plt.title('Histogramm der Endkompetenzwerte')
|
||||
plt.xlabel('Kompetenzniveau')
|
||||
plt.ylabel('Häufigkeit')
|
||||
plt.grid(True)
|
||||
plt.show()
|
||||
|
||||
# Ausgabe der Analyseergebnisse
|
||||
print("Durchschnittliche Endkompetenz:", mittelwert)
|
||||
print("Standardabweichung der Endkompetenz:", std_abweichung)
|
||||
print("95% Konfidenzintervall für die mittlere Endkompetenz:", konfidenzintervall)
|
||||
## **Erklärung**
|
||||
- Konfidenzintervalle: Das 95% Konfidenzintervall gibt an, wo die wahre mittlere Endkompetenz mit 95% Sicherheit liegt. Es wird unter der Annahme berechnet, dass die Endkompetenzen normalverteilt sind.
|
||||
- Histogramm: Dieses visualisiert die Verteilung der Endkompetenzwerte aller Simulationsdurchläufe, was hilft, die Form der Verteilung zu erkennen und auf Anomalien zu prüfen.
|
||||
## **Dieser Code fügt deinem Simulationsmodell wichtige statistische Analysen hinzu, um die Unsicherheit und Verteilung der Ergebnisse zu verstehen.**
|
||||
Reference in New Issue
Block a user