Самый быстрый способ отобразить столбец из уникального ключа DataFrame до дублированного спускаемого DataFramePython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Самый быстрый способ отобразить столбец из уникального ключа DataFrame до дублированного спускаемого DataFrame

Сообщение Anonymous »

У меня есть два DataFrames: < /p>

[*]: содержит уникальные (A1, A2) пары и столбец d с числовыми значениями. : содержит (a1, a2) пары, но позволяет дубликаты. > от до b на основе ключей (A1, A2) .
В настоящее время я использую следующий подход Pandas: < /p>

Код: Выделить всё

import pandas as pd

A = pd.DataFrame({
'A1': [1, 2, 3],
'A2': ['X', 'Y', 'Z'],
'D': [10, 20, 30]
})

B = pd.DataFrame({
'A1': [2, 3, 4, 2],
'A2': ['Y', 'Z', 'W', 'Y'],
})

B = B.merge(A, how='left', on=['A1', 'A2'], suffixes=('', '_A'))
B.drop(columns=[col for col in B.columns if col.endswith('_A')], inplace=True)

print(B)
дает вывод B заполнен D

Код: Выделить всё

   A1 A2     D
0   2  Y  20.0
1   3  Z  30.0
2   4  W   NaN
3   2  Y  20.0
проблемы :
Я ищу более быстрый способ достичь того же отображения, кроме как с использованием Merge Полем Выход должен сохранить все строки из B, заполняя отсутствующие значения из A, где применимо. Одним из недостатков этого подхода является удаление ненужных столбцов из -за левого соединения, чтобы сделать его совместимым для моего нижнего кода.
Что я попробовал: < /p>
Использование Update () , но он не очень хорошо работает с мульти-ключом.
Вопрос:
Есть ли более эффективный способ отображения d от до b быстрее без ненужных операций столбцов?

Подробнее здесь: https://stackoverflow.com/questions/794 ... owed-dataf
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»