Kom igångKom igång gratis

Extrahera en funktion

När du utvecklade en modell för att förutsäga gymnasieexamen skrev du koden nedan för att beräkna z-poäng för studenters årsbetyg (z-poäng anger standardavvikelse från medelvärdet). Nu ska systemet bli produktionsklar, och du behöver åtgärda upprepningarna i koden. Att skriva en funktion för att beräkna z-poäng skulle förbättra den avsevärt.

# 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()

Obs: df är en pandas DataFrame där varje rad representerar en student med 4 kolumner för årliga betyg: y1_gpa, y2_gpa, y3_gpa, y4_gpa.

Den här övningen är en del av kursen

Att skriva funktioner i Python

Visa kurs

Övningsinstruktioner

  • Färdigställ funktionen så att den returnerar z-poängen för en kolumn.
  • Använd funktionen för att beräkna z-poängen för varje år (df['y1_z'], df['y2_z'] osv.) utifrån de råa betygsvärden (df.y1_gpa, df.y2_gpa osv.).

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

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'] = ____
Redigera och kör kod