Skip to content

RobynPy - Missing Factor Vars? #1243

Open
@JJohnson-DA

Description

@JJohnson-DA

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
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions