Вступить в клуб →
средняявопросPython, витрины и качество данных

SettingWithCopyWarning при пересчёте суммы по срезу

ru = df[df['country'] == 'RU']
ru['amount_gross'] = ru['amount'] * 1.2

В логах появилось SettingWithCopyWarning. Что здесь на самом деле происходит и как переписать?

  • ru может быть копией среза, поэтому результат присваивания непредсказуем
  • Предупреждение косметическое, его отключают глобальной настройкой pandas и работают дальше
  • Новый столбец нельзя создавать присваиванием, для этого существует только метод assign
  • Срез по маске всегда возвращает представление, поэтому исходный df уже изменён

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела