Recherche affinée des valeurs de race Pokemon à l'aide de Python

Je voulais trouver un Pokémon qui pourrait utiliser la salle des tours dans un match Pokémon, mais je me demandais quel Pokémon utiliser. Tout d'abord, lors de l'utilisation de la salle des tours, j'ai pensé qu'un Pokémon qui pourrait résister à l'attaque de l'adversaire serait bon car ce serait un adepte, alors je voulais trouver un Pokémon avec une valeur de course faible et une défense élevée et une défense spéciale. .. J'ai donc eu l'idée de restreindre la recherche à partir des données csv en utilisant le langage de programmation Python.

Préparez-vous à l'avance

· Installez Excel ou Numbers ・ Installation d'Anaconda -Installation de Python et Pandas

procédure

① Téléchargez et créez un fichier csv Le fichier csv de la valeur de course de Pokemon peut être téléchargé à partir de l'URL suivante. https://www.kaggle.com/abcsds/pokemon Ce fichier csv ne contient pas de données pour les Pokémon de 7 à 8 générations. De plus, comme il est écrit en anglais, le nom de Pokemon est également un nom anglais, il peut donc être un peu difficile à gérer.

Le Pokémon de 8e génération (Pokémon apparaissant dans le bouclier de l'épée) a mis un certain temps à copier les données de l'URL suivante, mais j'ai organisé le tableau sur Excel et en ai fait un fichier csv. https://wiki.ポケモン.com/wiki/種族値一覧_(第八世代)

② Réduisez la valeur de la race avec Python Tout d'abord, essayez de lire les données du fichier csv. Faites glisser l'icône du fichier csv installé pour le mettre dans la liste des fichiers sur le côté gauche de l'écran. Ensuite, entrez le code suivant dans Jupyter Lab d'Anacoda.

import pandas as pd
df = pd.read_csv("Pokemon.csv")
df

Ensuite, la liste sera affichée à l'écran comme indiqué dans la figure ci-dessous.

スクリーンショット 2020-06-16 14.47.48.png

Ensuite, je voudrais affiner le Pokémon de type Esper à l'exclusion de la légende. Essayez d'entrer le code suivant.

df.loc[(df.Legendary == False) & (df["Type 1"] == "Psychic")]

Ensuite, je pense qu'une liste de Pokémon de type Esper non légendaires est affichée comme indiqué dans l'écran ci-dessous.

スクリーンショット 2020-06-16 14.52.30.png

Ensuite, reprenez les résultats de la liste restreints plus tôt et entrez le code suivant pour rechercher des Pokémon avec une valeur de course de défense de 60 ou plus et une agilité de 65 ou moins.

df = df.loc[(df.Legendary == False) & (df["Type 1"] == "Psychic")]
df.loc[(df.Defense >= 60) & (df.Speed <= 65)]

À la suite de l'entrée, je pense qu'il a été considérablement réduit.

スクリーンショット 2020-06-16 15.01.23.png

Enfin, entrez le code suivant pour trier les valeurs de course de défense par ordre décroissant et vous avez terminé.

df = df.loc[(df.Defense >= 60) & (df.Speed <= 65)]
df.sort_values(by = ['Defense'], ascending = False)
スクリーンショット 2020-06-16 15.04.13.png

En résumé, vous pouvez facilement obtenir le résultat en entrant le code suivant.

import pandas as pd
df = pd.read_csv("Pokemon.csv")
df = df.loc[(df.Legendary == False) & (df["Type 1"] == "Psychic")]
df = df.loc[(df.Defense >= 60) & (df.Speed <= 65)]
df.sort_values(by = ['Defense'], ascending = False)

finalement

Comme il était difficile de comprendre Pokemon avec des noms anglais, j'ai également lu le fichier csv avec des noms japonais créés à partir de la liste copiée à partir de l'URL et je l'ai réduit de la même manière. Nommez le fichier Pokemon_data.csv et entrez le code ci-dessous pour obtenir les résultats.

import pandas as pd
df = pd.read_csv("Pokemon_data.csv")
df = df.loc[(df.Légende== False) & (df["Type 1"] == "Esper")]
df = df.loc[(df.la défense>= 60) & (df.Agilité<= 65)]
df.sort_values(by = ['la défense'], ascending = False)
スクリーンショット 2020-06-16 15.37.40.png

Ce que j'ai trouvé, c'est que Brimon et Mushana étaient tout aussi faibles en rapidité et élevés en défense et en défense spéciale, alors je les ai interprétés comme des candidats pour que Pokémon utilise la salle des tours.

Il existe d'autres Pokémon qui sont de type fantôme et peuvent utiliser des salles de tours, il peut donc être bon d'entrer le code et de les rechercher également.

Épilogue

Vous pouvez pratiquer le code à l'aide de Pandas à l'URL suivante. Je pense que c'est une bonne référence pour étudier la programmation.

https://www.kaggle.com/learn/pandas

Recommended Posts

Recherche affinée des valeurs de race Pokemon à l'aide de Python
Pandas Python: recherchez DataFrame à l'aide d'expressions régulières
Rechercher sur Twitter avec Python
Algorithme de recherche utilisant word2vec [python]
Essayez une recherche similaire de recherche d'images à l'aide du SDK Python [Recherche]
[Excel] Recherche de valeurs en double (caractères)
Rechercher des marques rentables avec COTOHA
[TouchDesigner] Conseils pour la déclaration par python
[Python] Raison du remplacement à l'aide de super ()
[Python] Quatre-vingt-dix-neuf tables utilisant des instructions for
Recherche de priorité de profondeur à l'aide de la pile en Python
Vider, restaurer et rechercher des requêtes d'instances de classe Python à l'aide de mongodb
Remarques sur l'utilisation d'OpenCV avec Windows10 Python 3.8.3.
Python> dictionnaire> values ()> Obtenir toutes les valeurs à l'aide de values ()
[50 comptes] Transmission de clé à l'aide de Python pour Windows
[python, multitraitement] Comportement des exceptions lors de l'utilisation du multitraitement
Conseils pour utiliser python + caffe avec TSUBAME
Remarques sur l'utilisation de python (pydev) avec eclipse
Recherche de synonymes dans la liste de mots (csv) par Python Japanese WordNet
Rechercher des informations sur Pokemon Haunting sur Twitter
Rechercher la structure d'adsorption à l'aide de la méthode Minima Hopping
vprof - J'ai essayé d'utiliser le profileur pour Python
Raisonnement causal et recherche causale par Python (pour les débutants)
[Python] J'ai cherché le plus long Pokémon Shiritori
Remplissez les valeurs des variables dynamiques avec 0 en Python
Passer des valeurs entre les pages à l'aide du module cgi Python 3.5
Cherchons des valeurs numériques par recherche linéaire / recherche de 2 minutes
Faisons un module pour Python en utilisant SWIG
30/10/2016 else pour Python3> pour:
Python: valeurs Tips-Swap
Commencez à utiliser Python
Scraping à l'aide de Python
Analysons les données Covid-19 (Corona) en utilisant Python [Pour les débutants]
Recherche de balises pixiv et enregistrement d'illustrations à l'aide de Python
Squelettes extensibles pour Vim utilisant Python, Click et Jinja2
[Heroku] Mémo pour le déploiement d'applications Python à l'aide d'Heroku sous Windows [Python]
Utiliser l'API de recherche de la Bibliothèque du Parlement national en Python
Recherche récursive de fichiers et de répertoires en Python et sortie
Mémo de construction d'environnement d'apprentissage automatique par Python
[Introduction à Python] Comment écrire des instructions répétitives à l'aide d'instructions for