zusammenfügen
This commit is contained in:
@@ -5,6 +5,31 @@ import sympy as sp
|
||||
|
||||
@dataclass
|
||||
class Zuverlaessigkeit:
|
||||
import numpy as np
|
||||
import pandas as pd
|
||||
|
||||
def berechne_redundanzanteile(res_dict: dict, beobachtungen_labels: list) -> pd.DataFrame:
|
||||
|
||||
# 1. Redundanzmatrix R abrufen
|
||||
# R = Qvv * P
|
||||
R = res_dict.get("R")
|
||||
|
||||
if R is None:
|
||||
raise ValueError("Die Redundanzmatrix R wurde im res_dict nicht gefunden.")
|
||||
|
||||
# 2. Diagonalelemente extrahieren (das sind die r_i Werte)
|
||||
r_anteile = np.diag(R)
|
||||
|
||||
# 3. Ergebnisse in einem Pandas DataFrame zusammenfassen
|
||||
df_redundanz = pd.DataFrame({
|
||||
"Beobachtung": beobachtungen_labels,
|
||||
"r_i": np.round(r_anteile, 4), # Dezimal (0 bis 1)
|
||||
"r_i_prozent": np.round(r_anteile * 100, 2) # In Prozent (0 bis 100%)
|
||||
})
|
||||
|
||||
return df_redundanz
|
||||
|
||||
|
||||
|
||||
def redundanzanalyse(self, r_vec: Sequence[float]) -> Dict[str, object]:
|
||||
r_s = [sp.sympify(r) for r in r_vec]
|
||||
|
||||
Reference in New Issue
Block a user