Spec-Zone.ru › pandas 2

pandas.DataFrame.reindex_like

DataFrame.reindex_like(other, method=None, copy=None, limit=None, tolerance=None)[source]

Возвращает объект с совпадающими индексами как у объекта other.

Приводит объект к одинаковому индексу на всех осях. Необязательная логика заполнения, помещающая NaN в позиции, не имеющие значения в предыдущем индексе. Новый объект создаётся, если новый индекс не эквивалентен текущему и copy=False.

Параметры:
other:Объект того же типа данных

Его строковые и столбцовые индексы используются для определения новых индексов этого объекта.

method:{None, ‘backfill’/’bfill’, ‘pad’/’ffill’, ‘nearest’}

Метод для заполнения пробелов в переиндексированной таблице DataFrame. Обратите внимание: это применимо только к таблицам DataFrame/Series с монотонно возрастающим/убывающим индексом.

  • None (по умолчанию): не заполнять пробелы

  • pad / ffill: распространять последнее действительное наблюдение вперёд к следующему действительному

  • backfill / bfill: использовать следующее действительное наблюдение для заполнения пробела

  • nearest: использовать ближайшие действительные наблюдения для заполнения пробела.

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

Возвращает новый объект, даже если переданные индексы одинаковы.

Примечание

Ключевое слово copy изменит поведение в pandas 3.0. Copy-on-Write будет включено по умолчанию, что означает, что все методы с ключевым словом copy будут использовать механизм ленивой копии, чтобы отложить копирование и игнорировать ключевое слово copy. Ключевое слово copy будет удалено в будущей версии pandas.

Вы уже можете получить поведение и улучшения будущего через включение копирования при записи pd.options.mode.copy_on_write = True

limit:int, по умолчанию None

Максимальное количество последовательных меток для заполнения для неточных совпадений.

tolerance:необязательно

Максимальное расстояние между исходными и новыми метками для неточных совпадений. Значения индекса в соответствующих позициях должны удовлетворять уравнению abs(index[indexer] - target) <= tolerance.

Tolerance может быть скалярным значением, которое применяет одинаковую толерантность ко всем значениям, или списком, который применяет переменную толерантность к каждому элементу. Список включает список, кортеж, массив, Series и должен иметь такой же размер, как индекс, и его тип данных должен точно совпадать с типом индекса.

Возвращает:
Series или DataFrame

Тип тот же, что и у вызывающего объекта, но с изменёнными индексами на каждой оси.

См. также

DataFrame.set_index

Установить метки строк.

DataFrame.reset_index

Удалить метки строк или переместить их в новые столбцы.

DataFrame.reindex

Изменить на новые индексы или расширить индексы.

Примечания

То же, что вызов .reindex(index=other.index, columns=other.columns,...).

Примеры

>>> df1 = pd.DataFrame([[24.3, 75.7, 'high'],
...                     [31, 87.8, 'high'],
...                     [22, 71.6, 'medium'],
...                     [35, 95, 'medium']],
...                    columns=['temp_celsius', 'temp_fahrenheit',
...                             'windspeed'],
...                    index=pd.date_range(start='2014-02-12',
...                                        end='2014-02-15', freq='D'))
>>> df1
            temp_celsius  temp_fahrenheit windspeed
2014-02-12          24.3             75.7      high
2014-02-13          31.0             87.8      high
2014-02-14          22.0             71.6    medium
2014-02-15          35.0             95.0    medium
>>> df2 = pd.DataFrame([[28, 'low'],
...                     [30, 'low'],
...                     [35.1, 'medium']],
...                    columns=['temp_celsius', 'windspeed'],
...                    index=pd.DatetimeIndex(['2014-02-12', '2014-02-13',
...                                            '2014-02-15']))
>>> df2
            temp_celsius windspeed
2014-02-12          28.0       low
2014-02-13          30.0       low
2014-02-15          35.1    medium
>>> df2.reindex_like(df1)
            temp_celsius  temp_fahrenheit windspeed
2014-02-12          28.0              NaN       low
2014-02-13          30.0              NaN       low
2014-02-14           NaN              NaN       NaN
2014-02-15          35.1              NaN    medium

© 2008–2022, 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/2.2.2/reference/api/pandas.DataFrame.reindex_like.html

Spec-Zone.ru

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