当前位置: 首页>>代码示例>>Python>>正文


Python toolz.valmap方法代码示例

本文整理汇总了Python中toolz.valmap方法的典型用法代码示例。如果您正苦于以下问题:Python toolz.valmap方法的具体用法?Python toolz.valmap怎么用?Python toolz.valmap使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在toolz的用法示例。


在下文中一共展示了toolz.valmap方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: _expect_bounded

# 需要导入模块: import toolz [as 别名]
# 或者: from toolz import valmap [as 别名]
def _expect_bounded(make_bounded_check, __funcname, **named):
    def valid_bounds(t):
        return (
            isinstance(t, tuple)
            and len(t) == 2
            and t != (None, None)
        )

    for name, bounds in iteritems(named):
        if not valid_bounds(bounds):
            raise TypeError(
                "expect_bounded() expected a tuple of bounds for"
                " argument '{name}', but got {bounds} instead.".format(
                    name=name,
                    bounds=bounds,
                )
            )

    return preprocess(**valmap(make_bounded_check, named)) 
开发者ID:alpacahq,项目名称:pylivetrader,代码行数:21,代码来源:input_validation.py

示例2: _expect_bounded

# 需要导入模块: import toolz [as 别名]
# 或者: from toolz import valmap [as 别名]
def _expect_bounded(make_bounded_check, __funcname, **named):
    def valid_bounds(t):
        return (
            isinstance(t, tuple) and
            len(t) == 2 and
            t != (None, None)
        )

    for name, bounds in iteritems(named):
        if not valid_bounds(bounds):
            raise TypeError(
                "expect_bounded() expected a tuple of bounds for"
                " argument '{name}', but got {bounds} instead.".format(
                    name=name,
                    bounds=bounds,
                )
            )

    return preprocess(**valmap(make_bounded_check, named)) 
开发者ID:enigmampc,项目名称:catalyst,代码行数:21,代码来源:input_validation.py

示例3: coerce_types

# 需要导入模块: import toolz [as 别名]
# 或者: from toolz import valmap [as 别名]
def coerce_types(**kwargs):
    """
    Preprocessing decorator that applies type coercions.

    Parameters
    ----------
    **kwargs : dict[str -> (type, callable)]
         Keyword arguments mapping function parameter names to pairs of
         (from_type, to_type).

    Examples
    --------
    >>> @coerce_types(x=(float, int), y=(int, str))
    ... def func(x, y):
    ...     return (x, y)
    ...
    >>> func(1.0, 3)
    (1, '3')
    """
    def _coerce(types):
        return coerce(*types)

    return preprocess(**valmap(_coerce, kwargs)) 
开发者ID:enigmampc,项目名称:catalyst,代码行数:25,代码来源:input_validation.py

示例4: normalize

# 需要导入模块: import toolz [as 别名]
# 或者: from toolz import valmap [as 别名]
def normalize(df, index=True):
    if index:
        df = df.reset_index()

    for col in df.select_dtypes([bool]):
        df[col] = df[col].astype('uint8')

    dtypes = valmap(PD2CH.get, OrderedDict(df.dtypes))
    if None in dtypes.values():
        raise ValueError('Unknown type mapping in dtypes: {}'.format(dtypes))

    return dtypes, df 
开发者ID:kszucs,项目名称:pandahouse,代码行数:14,代码来源:convert.py

示例5: expect_element

# 需要导入模块: import toolz [as 别名]
# 或者: from toolz import valmap [as 别名]
def expect_element(*_pos, **named):
    """
    Preprocessing decorator that verifies inputs are elements of some
    expected collection.

    Usage
    -----
    >>> @expect_element(x=('a', 'b'))
    ... def foo(x):
    ...    return x.upper()
    ...
    >>> foo('a')
    'A'
    >>> foo('b')
    'B'
    >>> foo('c')
    Traceback (most recent call last):
       ...
    ValueError: foo() expected a value in ('a', 'b') for argument 'x', but got 'c' instead.  # noqa

    Notes
    -----
    This uses the `in` operator (__contains__) to make the containment check.
    This allows us to use any custom container as long as the object supports
    the container protocol.
    """
    if _pos:
        raise TypeError("expect_element() only takes keyword arguments.")

    def _expect_element(collection):
        template = (
            "%(funcname)s() expected a value in {collection} "
            "for argument '%(argname)s', but got %(actual)s instead."
        ).format(collection=collection)
        return make_check(
            ValueError,
            template,
            complement(op.contains(collection)),
            repr,
        )
    return preprocess(**valmap(_expect_element, named)) 
开发者ID:zhanghan1990,项目名称:zipline-chinese,代码行数:43,代码来源:input_validation.py

示例6: expect_dimensions

# 需要导入模块: import toolz [as 别名]
# 或者: from toolz import valmap [as 别名]
def expect_dimensions(**dimensions):
    """
    Preprocessing decorator that verifies inputs are numpy arrays with a
    specific dimensionality.

    Usage
    -----
    >>> from numpy import array
    >>> @expect_dimensions(x=1, y=2)
    ... def foo(x, y):
    ...    return x[0] + y[0, 0]
    ...
    >>> foo(array([1, 1]), array([[1, 1], [2, 2]]))
    2
    >>> foo(array([1, 1], array([1, 1])))
    Traceback (most recent call last):
       ...
    TypeError: foo() expected a 2-D array for argument 'y', but got a 1-D array instead.  # noqa
    """
    def _expect_dimension(expected_ndim):
        def _check(func, argname, argvalue):
            funcname = _qualified_name(func)
            actual_ndim = argvalue.ndim
            if actual_ndim != expected_ndim:
                if actual_ndim == 0:
                    actual_repr = 'scalar'
                else:
                    actual_repr = "%d-D array" % actual_ndim
                raise ValueError(
                    "{func}() expected a {expected:d}-D array"
                    " for argument {argname!r}, but got a {actual}"
                    " instead.".format(
                        func=funcname,
                        expected=expected_ndim,
                        argname=argname,
                        actual=actual_repr,
                    )
                )
            return argvalue
        return _check
    return preprocess(**valmap(_expect_dimension, dimensions)) 
开发者ID:zhanghan1990,项目名称:zipline-chinese,代码行数:43,代码来源:input_validation.py

示例7: check_type

# 需要导入模块: import toolz [as 别名]
# 或者: from toolz import valmap [as 别名]
def check_type(*ty_args, **ty_kwargs):
        """
        【装饰器】
        检查输入参数类型;检查失败raise CheckError
        :param ty_args: 类型tuple
        :param ty_kwargs: 类型dict
        :return: 
        """
        # 检查是否有不合规的tuple参数
        for ty in ty_args:
            if not isinstance(ty, (type, tuple)):
                raise TypeError(
                    "check_type() expected a type or tuple of types"
                    ", but got {type_} instead.".format(
                        type_=ty,
                    )
                )
        # 检查是否有不合规的dict参数
        for name, ty in six.iteritems(ty_kwargs):
            if not isinstance(ty, (type, tuple)):
                raise TypeError(
                    "check_type() expected a type or tuple of types for "
                    "argument '{name}', but got {type_} instead.".format(
                        name=name, type_=ty,
                    )
                )
        # 将type_check作用在函数参数上
        return arg_process(*map(type_check, list(ty_args)), **valmap(type_check, ty_kwargs)) 
开发者ID:bbfamily,项目名称:abu,代码行数:30,代码来源:ABuChecker.py

示例8: check_bound

# 需要导入模块: import toolz [as 别名]
# 或者: from toolz import valmap [as 别名]
def check_bound(*bd_args, **bd_kwargs):
        """
        【装饰器】
        检查输入参数是否在某一范围内;检查失败raise CheckError
        传入参数形式应为`` (min_value, max_value)``.
        ``None`` 可以作为 ``min_value`` 或 ``max_value``,相当于正负无穷
        :param bd_args: tuple范围参数
        :param bd_kwargs: dict范围参数
        :return: 
        """
        # 将bound_valid_and_check作用在函数参数上
        return arg_process(*map(bound_valid_and_check, list(bd_args)),
                           **valmap(bound_valid_and_check, bd_kwargs)) 
开发者ID:bbfamily,项目名称:abu,代码行数:15,代码来源:ABuChecker.py

示例9: check_subset

# 需要导入模块: import toolz [as 别名]
# 或者: from toolz import valmap [as 别名]
def check_subset(*ss_args, **ss_kwargs):
        """
        【装饰器】
        检查输入参数是否是某一集合的子集;检查失败raise CheckError
        :param ss_args: 参数集合tuple
        :param ss_kwargs: 参数集合dict
        :return: 
        """
        # 检查是否有不合规的tuple参数
        for ss in ss_args:
            if not isinstance(ss, (list, set, type(None))):
                raise TypeError(
                    "check_subset() expected a list or set or None of values"
                    ", but got {subset_} or tuple instead.".format(
                        subset_=str(type(ss)),
                    )
                )
        # 检查是否有不合规的dict参数
        for name, ss in six.iteritems(ss_kwargs):
            if not isinstance(ss, (list, set, type(None))):
                raise TypeError(
                    "check_subset() expected a list or set of values for "
                    "argument '{name_}', but got {subset_} or tuple instead.".format(
                        name_=name, subset_=str(type(ss)),
                    )
                )
        # 将subset_check函数作用在函数参数上
        return arg_process(*map(subset_check, list(ss_args)), **valmap(subset_check, ss_kwargs)) 
开发者ID:bbfamily,项目名称:abu,代码行数:30,代码来源:ABuChecker.py

示例10: update_display

# 需要导入模块: import toolz [as 别名]
# 或者: from toolz import valmap [as 别名]
def update_display(self, iteration, disp_level, col_width=12):  # pragma: no cover
        """
        Prints information about the optimization procedure to standard output

        Parameters
        ----------
        iteration : int
            The current iteration. Must either a positive integer or -1, which indicates the end of the algorithm

        disp_level : int
            An integer which controls how much information to display, ranging from 0 (nothing) to 3 (lots of stuff)

        col_width : int
            The width of each column in the data table, used if disp_level > 1
        """

        # exit and print nothing if disp_level is zero
        if disp_level == 0:
            return

        else:

            # simple update, no table
            if disp_level == 1 and iteration >= 0:
                print('[Iteration %i]' % iteration)

            # fancy table updates
            if disp_level > 1:

                # get the metadata from this iteration
                data = valmap(last, self.metadata)

                # choose what keys to use
                keys = ['Time (s)', 'Primal resid', 'Dual resid', 'rho']

                # initial update. print out table headers
                if iteration == 1:
                    print(tableprint.header(keys, width=col_width))

                # print data
                print(tableprint.row([data[k] for k in keys], width=col_width, format_spec='4g'))

                if iteration == -1:
                    print(tableprint.bottom(len(keys), width=col_width) + '\n')

            # print convergence statement
            if iteration == -1 and self.converged:
                print('Converged after %i iterations!' % len(self.metadata['Primal resid'])) 
开发者ID:ganguli-lab,项目名称:proxalgs,代码行数:50,代码来源:core.py

示例11: expect_kinds

# 需要导入模块: import toolz [as 别名]
# 或者: from toolz import valmap [as 别名]
def expect_kinds(**named):
    """
    Preprocessing decorator that verifies inputs have expected dtype kinds.

    Usage
    -----
    >>> from numpy import int64, int32, float32
    >>> @expect_kinds(x='i')
    ... def foo(x):
    ...    return x
    ...
    >>> foo(int64(2))
    2
    >>> foo(int32(2))
    2
    >>> foo(float32(2))  # doctest: +NORMALIZE_WHITESPACE +ELLIPSIS
    Traceback (most recent call last):
       ...
    TypeError: ...foo() expected a numpy object of kind 'i' for argument 'x',
    but got 'f' instead.
    """
    for name, kind in iteritems(named):
        if not isinstance(kind, (str, tuple)):
            raise TypeError(
                "expect_dtype_kinds() expected a string or tuple of strings"
                " for argument {name!r}, but got {kind} instead.".format(
                    name=name, kind=dtype,
                )
            )

    @preprocess(kinds=call(lambda x: x if isinstance(x, tuple) else (x,)))
    def _expect_kind(kinds):
        """
        Factory for kind-checking functions that work the @preprocess
        decorator.
        """
        def error_message(func, argname, value):
            # If the bad value has a dtype, but it's wrong, show the dtype
            # kind.  Otherwise just show the value.
            try:
                value_to_show = value.dtype.kind
            except AttributeError:
                value_to_show = value
            return (
                "{funcname}() expected a numpy object of kind {kinds} "
                "for argument {argname!r}, but got {value!r} instead."
            ).format(
                funcname=_qualified_name(func),
                kinds=' or '.join(map(repr, kinds)),
                argname=argname,
                value=value_to_show,
            )

        def _actual_preprocessor(func, argname, argvalue):
            if getattrs(argvalue, ('dtype', 'kind'), object()) not in kinds:
                raise TypeError(error_message(func, argname, argvalue))
            return argvalue

        return _actual_preprocessor

    return preprocess(**valmap(_expect_kind, named)) 
开发者ID:alpacahq,项目名称:pylivetrader,代码行数:63,代码来源:input_validation.py

示例12: expect_types

# 需要导入模块: import toolz [as 别名]
# 或者: from toolz import valmap [as 别名]
def expect_types(__funcname=_qualified_name, **named):
    """
    Preprocessing decorator that verifies inputs have expected types.

    Usage
    -----
    >>> @expect_types(x=int, y=str)
    ... def foo(x, y):
    ...    return x, y
    ...
    >>> foo(2, '3')
    (2, '3')
    >>> foo(2.0, '3')  # doctest: +NORMALIZE_WHITESPACE +ELLIPSIS
    Traceback (most recent call last):
       ...
    TypeError: ...foo() expected a value of type int for argument 'x',
    but got float instead.

    Notes
    -----
    A special argument, __funcname, can be provided as a string to override the
    function name shown in error messages.  This is most often used on __init__
    or __new__ methods to make errors refer to the class name instead of the
    function name.
    """
    for name, type_ in iteritems(named):
        if not isinstance(type_, (type, tuple)):
            raise TypeError(
                "expect_types() expected a type or tuple of types for "
                "argument '{name}', but got {type_} instead.".format(
                    name=name, type_=type_,
                )
            )

    def _expect_type(type_):
        # Slightly different messages for type and tuple of types.
        _template = (
            "%(funcname)s() expected a value of type {type_or_types} "
            "for argument '%(argname)s', but got %(actual)s instead."
        )
        if isinstance(type_, tuple):
            template = _template.format(
                type_or_types=' or '.join(map(_qualified_name, type_))
            )
        else:
            template = _template.format(type_or_types=_qualified_name(type_))

        return make_check(
            exc_type=TypeError,
            template=template,
            pred=lambda v: not isinstance(v, type_),
            actual=compose(_qualified_name, type),
            funcname=__funcname,
        )

    return preprocess(**valmap(_expect_type, named)) 
开发者ID:alpacahq,项目名称:pylivetrader,代码行数:58,代码来源:input_validation.py

示例13: expect_element

# 需要导入模块: import toolz [as 别名]
# 或者: from toolz import valmap [as 别名]
def expect_element(__funcname=_qualified_name, **named):
    """
    Preprocessing decorator that verifies inputs are elements of some
    expected collection.

    Usage
    -----
    >>> @expect_element(x=('a', 'b'))
    ... def foo(x):
    ...    return x.upper()
    ...
    >>> foo('a')
    'A'
    >>> foo('b')
    'B'
    >>> foo('c')  # doctest: +NORMALIZE_WHITESPACE +ELLIPSIS
    Traceback (most recent call last):
       ...
    ValueError: ...foo() expected a value in ('a', 'b') for argument 'x',
    but got 'c' instead.

    Notes
    -----
    A special argument, __funcname, can be provided as a string to override the
    function name shown in error messages.  This is most often used on __init__
    or __new__ methods to make errors refer to the class name instead of the
    function name.

    This uses the `in` operator (__contains__) to make the containment check.
    This allows us to use any custom container as long as the object supports
    the container protocol.
    """
    def _expect_element(collection):
        if isinstance(collection, (set, frozenset)):
            # Special case the error message for set and frozen set to make it
            # less verbose.
            collection_for_error_message = tuple(sorted(collection))
        else:
            collection_for_error_message = collection

        template = (
            "%(funcname)s() expected a value in {collection} "
            "for argument '%(argname)s', but got %(actual)s instead."
        ).format(collection=collection_for_error_message)
        return make_check(
            ValueError,
            template,
            complement(op.contains(collection)),
            repr,
            funcname=__funcname,
        )
    return preprocess(**valmap(_expect_element, named)) 
开发者ID:alpacahq,项目名称:pylivetrader,代码行数:54,代码来源:input_validation.py

示例14: expect_dimensions

# 需要导入模块: import toolz [as 别名]
# 或者: from toolz import valmap [as 别名]
def expect_dimensions(__funcname=_qualified_name, **dimensions):
    """
    Preprocessing decorator that verifies inputs are numpy arrays with a
    specific dimensionality.

    Usage
    -----
    >>> from numpy import array
    >>> @expect_dimensions(x=1, y=2)
    ... def foo(x, y):
    ...    return x[0] + y[0, 0]
    ...
    >>> foo(array([1, 1]), array([[1, 1], [2, 2]]))
    2
    >>> foo(array([1, 1]), array([1, 1]))  # doctest: +NORMALIZE_WHITESPACE
    ...                                    # doctest: +ELLIPSIS
    Traceback (most recent call last):
       ...
    ValueError: ...foo() expected a 2-D array for argument 'y',
    but got a 1-D array instead.
    """
    if isinstance(__funcname, str):
        def get_funcname(_):
            return __funcname
    else:
        get_funcname = __funcname

    def _expect_dimension(expected_ndim):
        def _check(func, argname, argvalue):
            actual_ndim = argvalue.ndim
            if actual_ndim != expected_ndim:
                if actual_ndim == 0:
                    actual_repr = 'scalar'
                else:
                    actual_repr = "%d-D array" % actual_ndim
                raise ValueError(
                    "{func}() expected a {expected:d}-D array"
                    " for argument {argname!r}, but got a {actual}"
                    " instead.".format(
                        func=get_funcname(func),
                        expected=expected_ndim,
                        argname=argname,
                        actual=actual_repr,
                    )
                )
            return argvalue
        return _check
    return preprocess(**valmap(_expect_dimension, dimensions)) 
开发者ID:alpacahq,项目名称:pylivetrader,代码行数:50,代码来源:input_validation.py

示例15: expect_types

# 需要导入模块: import toolz [as 别名]
# 或者: from toolz import valmap [as 别名]
def expect_types(*_pos, **named):
    """
    Preprocessing decorator that verifies inputs have expected types.

    Usage
    -----
    >>> @expect_types(x=int, y=str)
    ... def foo(x, y):
    ...    return x, y
    ...
    >>> foo(2, '3')
    (2, '3')
    >>> foo(2.0, '3')
    Traceback (most recent call last):
       ...
    TypeError: foo() expected an argument of type 'int' for argument 'x', but got float instead.  # noqa
    """
    if _pos:
        raise TypeError("expect_types() only takes keyword arguments.")

    for name, type_ in iteritems(named):
        if not isinstance(type_, (type, tuple)):
            raise TypeError(
                "expect_types() expected a type or tuple of types for "
                "argument '{name}', but got {type_} instead.".format(
                    name=name, type_=type_,
                )
            )

    def _expect_type(type_):
        # Slightly different messages for type and tuple of types.
        _template = (
            "%(funcname)s() expected a value of type {type_or_types} "
            "for argument '%(argname)s', but got %(actual)s instead."
        )
        if isinstance(type_, tuple):
            template = _template.format(
                type_or_types=' or '.join(map(_qualified_name, type_))
            )
        else:
            template = _template.format(type_or_types=_qualified_name(type_))

        return make_check(
            TypeError,
            template,
            lambda v: not isinstance(v, type_),
            compose(_qualified_name, type),
        )

    return preprocess(**valmap(_expect_type, named)) 
开发者ID:zhanghan1990,项目名称:zipline-chinese,代码行数:52,代码来源:input_validation.py


注:本文中的toolz.valmap方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。