Open
Description
Should the factor_vars
fromMMMData.MMMDataSpec
be included here? I'm getting this error and when checking I don't see my specified factor variable included in featurized_mmm_data.dt_mod
.
---------------------------------------------------------------------------
KeyError Traceback (most recent call last)
Cell In[11], line 10
1 # %% Evaluate Models
2 configs = ClusteringConfig(
3 dep_var_type=DependentVarType(mmm_data.mmmdata_spec.dep_var_type),
4 cluster_by=ClusterBy.HYPERPARAMETERS,
(...) 7 weights=[1.0, 1.0, 1.0],
8 )
---> 10 robyn.evaluate_models(cluster_config=configs)
File /opt/miniconda3/envs/robyn_mmm/lib/python3.12/site-packages/robyn/robyn.py:283, in Robyn.evaluate_models(self, pareto_config, cluster_config, display_plots, export_plots)
273 if display_plots or export_plots:
274 pareto_visualizer = ParetoVisualizer(
275 pareto_result=self.pareto_result,
276 mmm_data=self.mmm_data,
(...) 281 model_outputs=self.model_outputs,
282 )
--> 283 pareto_visualizer.plot_all(display_plots, self.working_dir)
284 if self.cluster_result:
285 cluster_visualizer = ClusterVisualizer(
286 self.pareto_result,
287 self.cluster_result,
288 self.mmm_data,
289 )
File /opt/miniconda3/envs/robyn_mmm/lib/python3.12/site-packages/robyn/visualization/pareto_visualizer.py:991, in ParetoVisualizer.plot_all(self, display_plots, export_location)
988 break # TODO: This will generate too many plots. Only generate plots for the first solution. we can export all plots to a folder if too many to display
990 if not self.model_outputs.hyper_fixed:
--> 991 prophet_decomp_plot = self.create_prophet_decomposition_plot()
992 if prophet_decomp_plot:
993 figures["prophet_decomp"] = prophet_decomp_plot
File /opt/miniconda3/envs/robyn_mmm/lib/python3.12/site-packages/robyn/visualization/pareto_visualizer.py:747, in ParetoVisualizer.create_prophet_decomposition_plot(self)
735 prophet_vars_str.sort(reverse=True)
736 value_variables = (
737 [
738 (
(...) 745 + prophet_vars_str
746 )
--> 747 df_long = df.melt(
748 id_vars=["ds"],
749 value_vars=value_variables,
750 var_name="variable",
751 value_name="value",
752 )
753 df_long["ds"] = pd.to_datetime(df_long["ds"])
754 plt.figure(figsize=(12, 3 * len(df_long["variable"].unique())))
File /opt/miniconda3/envs/robyn_mmm/lib/python3.12/site-packages/pandas/core/frame.py:9942, in DataFrame.melt(self, id_vars, value_vars, var_name, value_name, col_level, ignore_index)
9932 @Appender(_shared_docs["melt"] % {"caller": "df.melt(", "other": "melt"})
9933 def melt(
9934 self,
(...) 9940 ignore_index: bool = True,
9941 ) -> DataFrame:
-> 9942 return melt(
9943 self,
9944 id_vars=id_vars,
9945 value_vars=value_vars,
9946 var_name=var_name,
9947 value_name=value_name,
9948 col_level=col_level,
9949 ignore_index=ignore_index,
9950 ).__finalize__(self, method="melt")
File /opt/miniconda3/envs/robyn_mmm/lib/python3.12/site-packages/pandas/core/reshape/melt.py:74, in melt(frame, id_vars, value_vars, var_name, value_name, col_level, ignore_index)
70 if missing.any():
71 missing_labels = [
72 lab for lab, not_found in zip(labels, missing) if not_found
73 ]
---> 74 raise KeyError(
75 "The following id_vars or value_vars are not present in "
76 f"the DataFrame: {missing_labels}"
77 )
78 if value_vars_was_not_none:
79 frame = frame.iloc[:, algos.unique(idx)]
KeyError: "The following id_vars or value_vars are not present in the DataFrame: ['dummy_factor']"
Metadata
Metadata
Assignees
Labels
No labels