Spec-Zone.ru › pandas 0.18

pandas.Series.replace

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

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

Параметры:

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

  • str или regex:

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

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

    • Вложенные словари, например, {‘a’: {‘b’: nan}}, читаются следующим образом: ищем в столбце ‘a’ значение ‘b’ и заменяем его на 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

Примечания

  • Подстановка регулярных выражений выполняется под капотом с помощью 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.18.1/generated/pandas.Series.replace.html

Spec-Zone.ru

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