Что выведет код Junior merge, join и concat спрашивают часто обновлено
merge и дубли ключа: сколько строк
Вопрос
Что выведет код? По строке на каждый print.
import pandas as pd
left = pd.DataFrame({'k': [1, 1, 2], 'a': [10, 20, 30]})
right = pd.DataFrame({'k': [1, 1, 3], 'b': ['x', 'y', 'z']})
print(len(left.merge(right, on='k')))
print(len(left.merge(right, on='k', how='left')))
print(len(left.merge(right, on='k', how='outer')))
Попробуйте сами
Напишите, что выведет код: каждый вывод с новой строки.
Показать ответ и разбор
Коротко
Код выведет: 4, 5, 6. Ключ 1 есть дважды слева и дважды справа: 2 × 2 = 4 пары, это и есть inner.
Что выведет
4
5
6
Разбор
Ключ 1 есть дважды слева и дважды справа: 2 × 2 = 4 пары, это и есть inner. Left добавляет строку с ключом 2 без пары: 5. Outer добавляет ещё строку с ключом 3 из правой таблицы: 6.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.