Pandas как заменить значения
4 года назад
Arthur Cheremisin
Ответы
Для замены значений в DataFrame с помощью библиотеки pandas можно воспользоваться методами replace() или loc().
Метод replace() позволяет заменить все значения в DataFrame определенным значением. Например, если нужно заменить все значения в столбце 'A' равные 1 на 0, то можно использовать следующий код:
Метод loc() позволяет заменить значения в DataFrame на основе условия. Например, если нужно заменить все значения в столбце 'A' больше 2 на 10, то можно использовать следующий код:
Таким образом, с помощью методов replace() и loc() можно легко заменить значения в DataFrame в соответствии с заданными условиями.
2 года назад
Elena Gromova
Конкретные значения в pandas заменяют методом replace(). В него передают словарь «что → на что»:
Заменить по условию
loc меняет значения в строках, которые подходят под условие:
Два варианта значения в зависимости от условия — через numpy.where:
Заменить пропуски
Средним значением: df["age"].fillna(df["age"].mean()).
Заменить часть строки
replace() без .str заменяет значение ячейки целиком. Для замены внутри строки нужен .str.replace().
Заменить через функцию
Частая ошибка
SettingWithCopyWarning появляется, если менять значения в отфильтрованной копии: df[df["sales"] < 0]["sales"] = 0. Такая запись может не изменить исходную таблицу. Пишите через df.loc[условие, "столбец"] = значение.
Работу с таблицами в pandas разбирают в курсе «Python для анализа данных».
17 дней назад
Никита Вихров






