Пример #1
0
def test_unflatten_dict_raises_error_column_index():
    """Test unflatten dict raises error column_index."""
    # Run
    flat = {'foo__1__0': 'some value'}

    with pytest.raises(ValueError):
        unflatten_dict(flat)
Пример #2
0
    def _set_parameters(self, parameters):
        """Set copula model parameters.

        Args:
            dict:
                Copula flatten parameters.
        """
        parameters = unflatten_dict(parameters)
        parameters = self._rebuild_gaussian_copula(parameters)

        self._model = copulas.multivariate.GaussianMultivariate.from_dict(parameters)
Пример #3
0
    def set_parameters(self, parameters):
        """Set copula model parameters.

        Args:
            dict:
                Copula flatten parameters.
        """
        parameters = unflatten_dict(parameters)
        parameters = self._rebuild_gaussian_copula(parameters)

        self._num_rows = max(0, int(round(parameters.pop('num_rows'))))
        self._model = copulas.multivariate.GaussianMultivariate.from_dict(
            parameters)
Пример #4
0
    def set_parameters(self, parameters):
        """Set copula model parameters.

        Add additional keys after unflatte the parameters
        in order to set expected parameters for the copula.

        Args:
            dict:
                Copula flatten parameters.
        """
        parameters = unflatten_dict(parameters)
        parameters.setdefault('fitted', True)
        parameters.setdefault('distribution', self.distribution)

        parameters = self._unflatten_gaussian_copula(parameters)

        self.model = GaussianMultivariate.from_dict(parameters)
Пример #5
0
def test_unflatten_dict():
    """Test unflatten_dict."""
    # Run
    flat = {
        'foo__0__foo': 'foo value',
        'bar__0__0': 'bar value',
        'tar': 'tar value'
    }
    result = unflatten_dict(flat)

    # Asserts
    expected = {
        'foo': {0: {'foo': 'foo value'}},
        'bar': [['bar value']],
        'tar': 'tar value',
    }
    assert result == expected
Пример #6
0
    def set_parameters(self, parameters, unflatten=False):
        """Set copula model parameters.

        Add additional keys after unflatte the parameters
        in order to set expected parameters for the copula.

        Args:
            dict:
                Copula flatten parameters.
            unflatten (bool):
                Whether the parameters need to be unflattened or not.
        """
        if unflatten:
            parameters = unflatten_dict(parameters)
            parameters.setdefault('distribution', self._distribution)

            parameters = self._unflatten_gaussian_copula(parameters)

        self._model = copulas.multivariate.GaussianMultivariate.from_dict(
            parameters)