Spec-Zone.ru › pandas 1

pandas.merge_ordered

pandas.merge_ordered(left, right, on=None, left_on=None, right_on=None, left_by=None, right_by=None, fill_method=None, suffixes=('_x', '_y'), how='outer')[source]

Выполняет слияние упорядоченных данных с необязательным заполнением/интерполяцией.

Предназначено для упорядоченных данных, таких как временные ряды. Необязательно выполняет слияние по группам (см. примеры).

Параметры
left:DataFrame
right:DataFrame
on:имя поля или список

Имена полей для объединения. Должны быть в обоих DataFrame.

left_on:имя поля или список, или массив-подобный объект

Имена полей для объединения в левом DataFrame. Может быть вектором или списком векторов длины DataFrame для использования конкретного вектора в качестве ключа объединения вместо столбцов.

right_on:имя поля или список, или массив-подобный объект

Имена полей для объединения в правом DataFrame или вектор/список векторов по документации left_on.

left_by:имя столбца или список имён столбцов

Группирует левый DataFrame по столбцам групп и выполняет слияние по частям с правым DataFrame.

right_by:имя столбца или список имён столбцов

Группирует правый DataFrame по столбцам групп и выполняет слияние по частям с левым DataFrame.

fill_method:{‘ffill’, None}, по умолчанию None

Метод интерполяции для данных.

suffixes:последовательность из двух элементов, по умолчанию (“_x”, “_y”)

Последовательность длины 2, где каждый элемент — необязательно строка, указывающая суффикс, который добавляется к совпадающим именам столбцов в left и right соответственно. Передайте значение None вместо строки, чтобы указать, что имя столбца из left или right должно остаться как есть без суффикса. По крайней мере одно из значений не должно быть None.

Изменено в версии 0.25.0.

how:{‘left’, ‘right’, ‘outer’, ‘inner’}, по умолчанию ‘outer’
  • left: использовать только ключи из левого фрейма (SQL: левое внешнее соединение)

  • right: использовать только ключи из правого фрейма (SQL: правое внешнее соединение)

  • outer: использовать объединение ключей из обоих фреймов (SQL: полное внешнее соединение)

  • inner: использовать пересечение ключей из обоих фреймов (SQL: внутреннее соединение).

Возвращает
DataFrame

Тип выходного DataFrame совпадает с типом ‘left’, если это подкласс DataFrame.

См. также

merge

Слияние со стилем присоединения баз данных.

merge_asof

Слияние по ближайшим ключам.

Примеры

>>> df1 = pd.DataFrame(
...     {
...         "key": ["a", "c", "e", "a", "c", "e"],
...         "lvalue": [1, 2, 3, 1, 2, 3],
...         "group": ["a", "a", "a", "b", "b", "b"]
...     }
... )
>>> df1
      key  lvalue group
0   a       1     a
1   c       2     a
2   e       3     a
3   a       1     b
4   c       2     b
5   e       3     b
>>> df2 = pd.DataFrame({"key": ["b", "c", "d"], "rvalue": [1, 2, 3]})
>>> df2
      key  rvalue
0   b       1
1   c       2
2   d       3
>>> merge_ordered(df1, df2, fill_method="ffill", left_by="group")
  key  lvalue group  rvalue
0   a       1     a     NaN
1   b       1     a     1.0
2   c       2     a     2.0
3   d       2     a     3.0
4   e       3     a     3.0
5   a       1     b     NaN
6   b       1     b     1.0
7   c       2     b     2.0
8   d       2     b     3.0
9   e       3     b     3.0

© 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/1.5.0/reference/api/pandas.merge_ordered.html

Spec-Zone.ru

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