Bonjour,Nous devons compléter un programme python en NSI, pouvez vous m'aidez?Voici le programme:Pour le code ci-dessous, compléter tous les éléments en jaune. Le personnage inconnu à trouver aura une force de 18 et un courage de 12.Exercice 1 :import pandas #.........................................import matplotlib.pyplot as plt #........................................from sklearn.neighbors import KNeighborsClassifierpersonnage=pandas.read_csv("personnages.csv") #lecture du fichier personnage.csv et stockage dans la variable personnagex=personnage.loc[:,"Force"]#récupération en abscisse des valeurs la force des personnagesy=personnage.loc[:,"Courage"] #récupération en ordonnées des valeurs le courage des personnageslab=personnage.loc[:,"Type"] #récupération l'espèce de chaque valeur pour la légende (0 si Fantassin, 1 si Chevalier et 2 si Archer).plt.scatter(x[lab == 0], y[lab == 0], color='g', label='...................') # on va tracer en vert que les points dont le label vaut 0 donc les Fantassinsplt.scatter(x[lab == 1], y[lab == 1], color='r', label='...................') # on va tracer en rouge que les points dont le label vaut 1 donc les Chevaliersplt.scatter(x[lab == 2], y[lab == 2], color='b', label='....................') # on va tracer en bleu que les points dont le label vaut 2 donc les Archersplt.scatter(........., .................., color='k')#rajout du personnage inconnu (18,12)plt.legend() #affichage de la légende#valeursforce=...........courage=................k=15#fin valeurs#début knnd=list(zip(x,y)) #permet de passer des 2 listes x et y à une liste tuplemodel = KNeighborsClassifier(n_neighbors=k) #méthode issue de la bibliothèque scikit-learn qui prend le KNN où k est le nombre de voisins les plus prochesmodel.fit(d,lab) #associe les tuples présents dans la liste "d" avec les labels (0 : "Fantassin", 1 : "Chevalier" ou 2 : "Archer")prediction= model.predict([[……,…..]]) #La variable "prediction" contient alors le label trouvé (0,1ou 2)par l'algorithme knn.#fin knn#Affichage résultatstxt="Résultat : "if prediction[0]==0:#.............................txt=txt+"Fantassin"#............................if prediction[0]==1:txt=txt+"Chevalier"if prediction[0]==2:txt=txt+"Archer"plt.text(3,7,"Force : {0}, courage : {1} .".format(force,courage),fontsize=12)plt.text(3,6, "k : {0}".format(k), fontsize=12)plt.text(3,5, txt, fontsize=12)#fin affichage résultats"""plt.show() #affichage du graphetableau:Force,Courage,Type2,12,05,19,02,15,05,18,05,17,04,17,01,19,01,20,01,10,02,16,06,15,02,15,02,11,01,20,05,17,01,10,04,12,08,16,017,20,120,18,115,19,115,18,119,17,118,14,118,18,117,13,118,15,114,14,112,16,118,15,110,12,114,16,118,15,120,2,220,1,221,5,218,6,215,5,216,1,214,4,217,6,218,7,218,2,217,1,215,9,216,7,214,1,219,9,2
Responda

Helpful Social

Copyright © 2024 ELIBRARY.TIPS - All rights reserved.