Skip to content

Commit de06c15

Browse files
authored
Merge pull request #308 from alexbrillant/issue-236
Fix Issue #236
2 parents bff3b42 + b5fd966 commit de06c15

File tree

1 file changed

+45
-2
lines changed

1 file changed

+45
-2
lines changed

neuraxle/base.py

Lines changed: 45 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3035,6 +3035,13 @@ class TransformHandlerOnlyMixin(NonFittableMixin):
30353035

30363036
@abstractmethod
30373037
def _transform_data_container(self, data_container: DataContainer, context: ExecutionContext) -> DataContainer:
3038+
"""
3039+
Transform data container with the given execution context.
3040+
3041+
:param data_container: data container
3042+
:param context: execution context
3043+
:return: transformed data container
3044+
"""
30383045
raise NotImplementedError('Must implement _transform_data_container in {0}'.format(self.name))
30393046

30403047
def transform(self, data_inputs) -> 'HandleOnlyMixin':
@@ -3111,7 +3118,13 @@ def __init__(self, cache_folder=None):
31113118
cache_folder = DEFAULT_CACHE_FOLDER
31123119
self.cache_folder = cache_folder
31133120

3114-
def transform(self, data_inputs):
3121+
def transform(self, data_inputs) -> Iterable:
3122+
"""
3123+
Using :func:`~neuraxle.base.BaseStep.handle_transform`, transform data inputs.
3124+
3125+
:param data_inputs: data inputs
3126+
:return: outputs
3127+
"""
31153128
execution_context = ExecutionContext(self.cache_folder, execution_mode=ExecutionMode.TRANSFORM)
31163129
context, data_container = self._encapsulate_data(
31173130
data_inputs, expected_outputs=None, execution_mode=ExecutionMode.TRANSFORM)
@@ -3121,18 +3134,38 @@ def transform(self, data_inputs):
31213134
return data_container.data_inputs
31223135

31233136
def fit(self, data_inputs, expected_outputs=None) -> 'HandleOnlyMixin':
3137+
"""
3138+
Using :func:`~neuraxle.base.BaseStep.handle_fit`, fit step with the given data inputs, and expected outputs.
3139+
3140+
:param data_inputs: data inputs
3141+
:return: fitted self
3142+
"""
31243143
context, data_container = self._encapsulate_data(data_inputs, expected_outputs, ExecutionMode.FIT)
31253144
new_self = self.handle_fit(data_container, context)
31263145

31273146
return new_self
31283147

31293148
def fit_transform(self, data_inputs, expected_outputs=None) -> Tuple['HandleOnlyMixin', Iterable]:
3149+
"""
3150+
Using :func:`~neuraxle.base.BaseStep.handle_fit_transform`, fit and transform step with the given data inputs, and expected outputs.
3151+
3152+
:param data_inputs: data inputs
3153+
:return: fitted self, outputs
3154+
"""
31303155
context, data_container = self._encapsulate_data(data_inputs, expected_outputs, ExecutionMode.FIT_TRANSFORM)
31313156
new_self, data_container = self.handle_fit_transform(data_container, context)
31323157

31333158
return new_self, data_container.data_inputs
31343159

3135-
def _encapsulate_data(self, data_inputs, expected_outputs=None, execution_mode=None):
3160+
def _encapsulate_data(self, data_inputs, expected_outputs=None, execution_mode=None) -> Tuple[ExecutionContext, DataContainer]:
3161+
"""
3162+
Encapsulate data with :class:`~neuraxle.data_container.DataContainer`.
3163+
3164+
:param data_inputs: data inputs
3165+
:param expected_outputs: expected outputs
3166+
:param execution_mode: execution mode
3167+
:return: execution context, data container
3168+
"""
31363169
data_container = DataContainer(data_inputs=data_inputs, expected_outputs=expected_outputs)
31373170
context = ExecutionContext(root=self.cache_folder, execution_mode=execution_mode)
31383171

@@ -3179,6 +3212,16 @@ class FullDumpLoader(Identity):
31793212
Identity step that can load the full dump of a pipeline step.
31803213
Used by :func:`~neuraxle.base.BaseStep.load`.
31813214
3215+
Usage example:
3216+
3217+
.. code-block:: python
3218+
3219+
saved_step = FullDumpLoader(
3220+
name=path,
3221+
stripped_saver=self.stripped_saver
3222+
).load(context_for_loading, True)
3223+
3224+
31823225
.. seealso::
31833226
:class:`ExecutionContext`
31843227
:class:`BaseStep`,

0 commit comments

Comments
 (0)