Untitled
def query(self, scope): cube = self.catalog.get_cube("Limits_Cube") dfs = [] for sens_name in SENS_NAME_INCLUDED.keys(): df = cube.query( cube.measures['Trigger Value'], cube.measures[DAILY_LIQUIDITY + " Triggers"], cube.measures[TRIGGER_CONSUMPTION_DAILY], filter=(cube.levels["AsOfDate"] == scope['AsOfDate']) & (cube.levels["SensitivityName"].isin(*SENS_NAME_INCLUDED[sens_name])), levels=[ cube.levels["AsOfDate"], cube.levels["TriggerGrouping2"], cube.levels["Tenor_Triggers"], ] ).reset_index() print(f"Forma del DataFrame antes del rename: {df.shape}") print(df.head()) # Mostrar los primeros registros if df.empty: print(f"⚠️ Advertencia: No se encontraron datos para {sens_name}") continue # Renombrar columnas df = df.rename(columns={ 'Trigger Value': "TRIGGER", DAILY_LIQUIDITY + " Triggers": "DAILY LIQUIDITY", TRIGGER_CONSUMPTION_DAILY: "CONSUMPTION" }) df = df.rename(columns={ "AsOfDate": "FECHA", "TriggerGrouping2": "SUBYACENTE", "Tenor_Triggers": "PLAZO", }) # Agregar factor y griega df["FACTOR"], df["GRIEGA"] = sens_name.split(' ') dfs.append(df) # ✅ 6. Verificar si hay datos antes de concatenar if not dfs: print("⚠️ Advertencia: Ningún DataFrame con datos, input_df estará vacío.") else: self.input_df = pd.concat(dfs, axis=0) print(f"Tamaño de input_df final: {self.input_df.shape}") print(self.input_df.head()) # Mostrar primeros datos
Leave a Comment