Spec-Zone.ru › pandas 0.19

pandas.Series.replace

Series.replace(to_replace=None, value=None, inplace=False, limit=None, regex=False, method='pad', axis=None) [source]

Замена значений, заданных в ‘to_replace’, на ‘value’.

Параметры:

to_replace : str, regex, список, словарь, Series, числовое значение или None

  • str или regex:

    • str: строка, точно соответствующая to_replace будет заменена на value
    • regex: regex, соответствующий to_replace будет заменён на value
  • список строк, regex или числовых значений:

    • Во-первых, если to_replace и value являются списками, то они должны иметь одинаковую длину.
    • Во-вторых, если regex=True , то все строки в обоих списках будут интерпретированы как regex, в противном случае они будут сопоставляться напрямую. Это не имеет большого значения для value , так как существует всего несколько возможных подстановочных regex.
    • Правила для строк и regex применяются как и выше.
  • словарь:

    • Вложенные словари, например, {‘a’: {‘b’: nan}}, читаются следующим образом: ищется значение ‘b’ в столбце ‘a’ и заменяется на nan. Вложенные регулярные выражения также допустимы. Обратите внимание, что имена столбцов (ключи словаря верхнего уровня во вложенном словаре) не могут быть регулярными выражениями.
    • Ключи соответствуют именам столбцов, а значения — значениям подстановки. Вы можете рассматривать это как частный случай передачи двух списков, за исключением того, что вы указываете столбец, в котором необходимо выполнить поиск.
  • None:

    • Это означает, что аргумент regex должен быть строкой, скомпилированным регулярным выражением или списком, словарем, массивом ndarray или Series таких элементов. Если value также None, то это должен быть вложенный словарь или Series.

Примеры каждого из этих вариантов см. в разделе примеров.

value : скалярное значение, словарь, список, строка, regex, по умолчанию None

Значение, используемое для заполнения пробелов (например, 0), или словарь значений, определяющий значение для каждого столбца (столбцы, не указанные в словаре, не будут заполнены). Допускаются также регулярные выражения, строки и списки или словари таких объектов.

inplace : boolean, по умолчанию False

Если True, выполняется на месте. Примечание: это изменит любые другие представления этого объекта (например, столбец из DataFrame). Возвращает вызывающую функцию, если это True.

limit : целое число, по умолчанию None

Максимальный размер разрыва для заполнения вперед или назад

regex : bool или тот же тип, что и to_replace, по умолчанию False

Указывает, следует ли интерпретировать to_replace и/или value как регулярные выражения. Если это True, то to_replace должен быть строкой. В противном случае to_replace должен быть None, так как этот параметр будет интерпретирован как регулярное выражение или список, словарь или массив регулярных выражений.

method : строка, необязательно, {‘pad’, ‘ffill’, ‘bfill’}

Метод, используемый для замены, когда to_replace является list.

Возвращает:

filled : NDFrame

Возможные исключения:

AssertionError

  • Если regex не является bool и to_replace не является None.

TypeError

  • Если to_replace является dict и value не является list, dict, ndarray, или Series
  • Если to_replace является None и regex не может быть скомпилирован в регулярное выражение или является списком, словарем, массивом ndarray или Series.

ValueError

  • Если to_replace и value являются list или ndarray , но не имеют одинаковой длины.

См. также

NDFrame.reindex, NDFrame.asfreq, NDFrame.fillna

Примечания

  • Замена regex выполняется под капотом с помощью re.sub. Правила подстановки для re.sub аналогичны.
  • Регулярные выражения будут заменять только строки, а значит, вы не можете, например, указать регулярное выражение, соответствующее числам с плавающей точкой, и ожидать, что столбцы в вашей таблице с числовым типом данных будут сопоставляться. Однако, если эти числа с плавающей точкой являются строками, то вы можете это сделать.
  • У этого метода очень много опций. Рекомендуется экспериментировать и использовать этот метод для получения интуиции о том, как он работает.

© 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.19.2/generated/pandas.Series.replace.html

Spec-Zone.ru

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