Kom igångKom igång gratis

Allt tillsammans: z-poäng för Pokémon

En lista med 720 Pokémon har laddats in i din session som names. Varje Pokémons hälsopoäng (HP) lagras i en NumPy-array kallad hps. Du vill analysera hälsopoängen med hjälp av z-poäng för att se hur många standardavvikelser varje Pokémons HP befinner sig från medelvärdet av alla HP.

Koden nedan skrevs för att beräkna HP z-poängen för varje Pokémon och samla de Pokémon med högst HP baserat på deras z-poäng:

poke_zscores = []

for name,hp in zip(names, hps):
    hp_avg = hps.mean()
    hp_std = hps.std()
    z_score = (hp - hp_avg)/hp_std
    poke_zscores.append((name, hp, z_score))
highest_hp_pokemon = []

for name,hp,zscore in poke_zscores:
    if zscore > 2:
        highest_hp_pokemon.append((name, hp, zscore))

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

Att skriva effektiv Python-kod

Visa kurs

Interaktiv övning med praktiskt arbete

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

# Calculate the total HP avg and total HP standard deviation
hp_avg = ____.____
hp_std = ____.____

# Use NumPy to eliminate the previous for loop
z_scores = (____ - ____)/____

# Combine names, hps, and z_scores
poke_zscores2 = [*____(names, hps, z_scores)]
print(*poke_zscores2[:3], sep='\n')
Redigera och kör kod