Menu
Coddy logo textTech

Изменение данных

Урок 11 из 19 курса Аналитика в pandas на Coddy.

Чтобы переопределить данные конкретной ячейки, столбца или строки, вы можете присвоить им новое значение:

df["existing_col"] = new_value            # Изменить столбец
df.loc[index] = new_value                 # Изменить строку
df.loc[index, "existing_col"] = new_value # изменить ячейку

Чтобы обновить значение столбца для строк, соответствующих определенному условию, используйте то же условие, которое мы изучили в предыдущих уроках, с методом .loc:

df.loc[df['col'] > 5, 'existing_col'] = new_value
 
df.loc[(df['col'] <= 5) & (df['col'] > 2), 'existing_col'] = new_value

Важно использовать ключевое слово loc при изменении существующих строк. Часто при изменении датафрейма без loc вы имеете дело с копией, а не с оригинальными данными. Например:

df[(df['col'] <= 5) & (df['col'] > 2)]["existing_col"] = new_value

Здесь условие возвращает копию датафрейма вместо оригинальных данных.

challenge icon

Задание

Легко

CSV-файл stats.csv содержит информацию о статистике.

Вот первые 5 строк файла:

ID,COUNTRY,COLOR,SKILL,SKILL_POINTS,UTILIZATION,IS_VALID,CATEGORY
1,France,Signal violet,marksmanship,14,0.1924,1,SHOW
2,Solomon Islands,Pearl violet,crocheting,4,0.6108,1,TREE
3,Germany,Bottle green,calligraphy,12,0.88646,0,SHOW
4,Mauritania,Fawn brown,paper cutting,9,0.058,1,JAPE
  • Измените все ячейки (кроме ячеек в столбцах IS_VALID и UTILIZATION), где IS_VALID равно 1, а UTILIZATION меньше 0.4, на значение MODIFIED.

Сохраните результат в переменной df.

Попробуйте сами

# pandas как pd уже импортирован
df = pd.read_csv("./stats.csv")
for column in df.columns:
    if column not in ["IS_VALID", "UTILIZATION"]:
        df[column] = df[column].astype(object)
# Напишите свой код ниже

Все уроки раздела Аналитика в pandas