Выделите функцию
Разрабатывая модель для предсказания завершения учёбы в колледже, вы написали код ниже, чтобы вычислить z-оценки годовых средних баллов (GPA) студентов (z-оценка показывает отклонение от среднего в единицах стандартного отклонения). Теперь вы готовите систему к production, а значит, нужно избавиться от повторяющегося кода. Напишите функцию для вычисления z-оценок.
# Standardize the GPAs for each year
df['y1_z'] = (df.y1_gpa - df.y1_gpa.mean()) / df.y1_gpa.std()
df['y2_z'] = (df.y2_gpa - df.y2_gpa.mean()) / df.y2_gpa.std()
df['y3_z'] = (df.y3_gpa - df.y3_gpa.mean()) / df.y3_gpa.std()
df['y4_z'] = (df.y4_gpa - df.y4_gpa.mean()) / df.y4_gpa.std()
Примечание: df — это pandas DataFrame, в котором каждая строка соответствует студенту и содержит 4 столбца с годовыми средними баллами: y1_gpa, y2_gpa, y3_gpa, y4_gpa.
Это упражнение является частью курса
Написание функций на Python
Инструкции к упражнению
- Доработайте функцию так, чтобы она возвращала z-оценки для столбца.
- Используйте эту функцию для вычисления z-оценок за каждый год (
df['y1_z'],df['y2_z']и т. д.) на основе исходных средних баллов (df.y1_gpa,df.y2_gpaи т. д.).
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
def standardize(column):
"""Standardize the values in a column.
Args:
column (pandas Series): The data to standardize.
Returns:
pandas Series: the values as z-scores
"""
# Finish the function so that it returns the z-scores
z_score = (____ - ____.____()) / ____.____()
return z_score
# Use the standardize() function to calculate the z-scores
df['y1_z'] = ____
df['y2_z'] = ____
df['y3_z'] = ____
df['y4_z'] = ____