Spec-Zone.ru › pandas 0.18

pandas.eval

pandas.eval(expr, parser='pandas', engine=None, truediv=True, local_dict=None, global_dict=None, resolvers=(), level=0, target=None, inplace=None)

Оценить строковое представление выражения Python с использованием различных бэкэндов.

Поддерживаются следующие арифметические операции: +, -, *, /, **, %, // (только движок python) вместе со следующими булевыми операциями: | (или), & (и), и ~ (не). Кроме того, синтаксический анализатор 'pandas' позволяет использовать and, or, и not с такими же семантическими значениями, как у соответствующих побитовых операторов. Series и DataFrame объекты поддерживаются и ведут себя так же, как при обычной оценке в Python.

Параметры:

expr : str или unicode

Выражение для оценки. Эта строка не может содержать никаких инструкций Python инструкций, только выражения Python выражений.

parser : строка, по умолчанию ‘pandas’, {‘pandas’, ‘python’}

Синтаксический анализатор для построения синтаксического дерева из выражения. По умолчанию 'pandas' анализирует код немного иначе, чем стандартный Python. В качестве альтернативы, вы можете использовать синтаксический анализатор 'python' для сохранения строгих семантических значений Python. Дополнительные сведения см. в документации улучшения производительности.

engine : строка или None, по умолчанию ‘numexpr’, {‘python’, ‘numexpr’}

Движок, используемый для оценки выражения. Поддерживаемые движки:

  • None : пытается использовать numexpr, переключается на python
  • 'numexpr': This default engine evaluates pandas objects using

    numexpr для значительного ускорения сложных выражений с большими кадрами.

  • 'python': Performs operations as if you had eval‘d in top

    уровень python. Этот движок, как правило, не так полезен.

В будущем может быть доступно больше бэкэндов.

truediv : bool, необязательно

Использовать ли истинное деление, как в Python >= 3

local_dict : dict или None, необязательно

Словарь локальных переменных, по умолчанию берётся из locals()

global_dict : dict или None, необязательно

Словарь глобальных переменных, по умолчанию берётся из globals()

resolvers : список dict-подобных объектов или None, необязательно

Список объектов, реализующих __getitem__ специальный метод, который вы можете использовать для вставки дополнительного набора пространств имён для поиска переменных. Например, это используется в методе query() для вставки переменных index и columns, которые ссылаются на соответствующие атрибуты экземпляра DataFrame.

level : int, необязательно

Количество предыдущих кадров стека для обхода и добавления в текущий область видимости. Большинству пользователей не нужно изменять этот параметр.

target : целевой объект для присваивания, необязательно, по умолчанию None

по существу, это переданный резолвер

inplace : bool, по умолчанию True

Если выражение изменяет объект, нужно ли изменять объект на месте или вернуть копию с изменением.

ПРЕДУПРЕЖДЕНИЕ: inplace=None в настоящее время переходит к True, но в будущей версии будет по умолчанию False. Используйте явно inplace=True, а не полагайтесь на значение по умолчанию.

Возвращаемое значение:

ndarray, числовой скаляр, DataFrame, Series

См. также

pandas.DataFrame.query, pandas.DataFrame.eval

Примечания

Тип данных любых объектов, участвующих в арифметической % операции, рекурсивно преобразуется к float64.

Дополнительные сведения см. в документации улучшения производительности.

© 2008–2012, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/0.18.1/generated/pandas.eval.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API