def serialize_dfs(dfs: WorkflowDataFrames, how: str = "inner", path="") -> WorkflowDataFrame: assert_or_throw(dfs.has_key, "all datarames must be named") serialized = WorkflowDataFrames( {k: serialize_df(v, k, path) for k, v in dfs.items()}) wf: FugueWorkflow = dfs.get_value_by_index(0).workflow return wf.join(serialized, how=how)
def add_dfs(self, dfs: WorkflowDataFrames, how: str = "") -> "TuneDatasetBuilder": assert_or_throw(dfs.has_key, "all datarames must be named") for k, v in dfs.items(): if len(self._dfs_spec) == 0: self.add_df(k, v) else: self.add_df(k, v, how=how) return self
def add_dfs(self, dfs: WorkflowDataFrames, how: str = "") -> "TuneDatasetBuilder": """Add multiple dataframes with the same join type :param dfs: dictionary like dataframe collection. The keys will be used as the dataframe names :param how: join type, can accept ``semi``, ``left_semi``, ``anti``, ``left_anti``, ``inner``, ``left_outer``, ``right_outer``, ``full_outer``, ``cross`` :returns: the builder itself """ assert_or_throw(dfs.has_key, "all datarames must be named") for k, v in dfs.items(): if len(self._dfs_spec) == 0: self.add_df(k, v) else: self.add_df(k, v, how=how) return self
def p2(wf: FugueWorkflow, dfs: WorkflowDataFrames, d: int) -> WorkflowDataFrames: return WorkflowDataFrames( {k: v.process(process, params={"d": d}) for k, v in dfs.items()})