Files
1ereNSI/knn/EXERCICES.md

54 lines
1.4 KiB
Markdown
Raw Normal View History

### Exercices
**Niveaux de difficulté :** ⭐ Facile | ⭐⭐ Moyen | ⭐⭐⭐ Difficile
---
## Exercice 1 ⭐⭐
1. **Écrire une fonction `calculer_distance`** qui prend en entrée les caractéristiques de deux Pokémon et retourne la distance euclidienne entre eux.
2. **Tester la fonction** avec des exemples simples pour vérifier son bon fonctionnement
Conseil : n'oubliez pas d'importer la bibliothèque `pandas` qui permet de travailler avec des fichiers csv (le cours se trouve [ici](../donnees_en_table))
Le fichier [pokemons.csv](pokemons.csv) qui va avec.
2024-03-28 15:15:14 +01:00
Ne pas oublier d'installer la bibliothèque pandas
```python
pip install --upgrade --proxy=172.16.0.253:3128 pandas
```
Pour charger les données :
2024-03-28 15:15:14 +01:00
```python
import pandas as pd
pokemons = pd.read_csv('chemin/vers/pokemons.csv')
```
---
<details>
<summary><strong>Voir la correction</strong></summary>
2024-03-28 15:15:14 +01:00
```python
import numpy as np
def calculer_distance(pokemon1, pokemon2):
# Utilise numpy pour calculer la distance euclidienne
distance = np.sqrt(np.sum(np.square(np.array(pokemon1) - np.array(pokemon2))))
return distance
# Exemple d'utilisation
pokemon1 = [60, 62] # Exemple de stats pour le Pokémon 1
pokemon2 = [85, 80] # Exemple de stats pour le Pokémon 2
2024-03-28 15:15:14 +01:00
distance = calculer_distance(pokemon1, pokemon2)
print("La distance entre les deux Pokémon est :", distance)
2024-03-28 15:15:14 +01:00
```
**Résultat attendu :** `La distance entre les deux Pokémon est : 31.400636936215164`
</details>