[PYTHON] Comment remplacer une valeur numérique pour une correspondance partielle (Remarque 1)

Des données d'utilisation

#Des données d'utilisation
df
name room_type
0 Hôtel A Chambre Twin Supérieure Non-Fumeur
1 Hôtel B Chambre twin supérieure fumeur
2 Hôtel C Chambre Twin Deluxe
3 Hôtel D Chambre twin standard non-fumeur
4 Hôtel E Une chambre double
5 Hôtel F Chambre Double de Luxe Non-Fumeur
6 Hôtel G Chambre twin standard non-fumeur
7 Hôtel H Chambre King Deluxe

J'ai préparé quelque chose comme ça.

Goal

Créez une nouvelle colonne avec room_type plus 1 pour celles nommées "Supérieur" et "Deluxe", et 0 pour celles qui ne le font pas.

Actions

new_room_type_list = []

for i in range(8):
    if 'Supérieur' in df['room_type'][i]:
        a = 1
    elif 'De luxe' in df['room_type'][i]:
        a = 1
    else:
        a = 0
    new_room_type_list.append(a)

Créez une liste comme celle-ci Ensuite, ajoutez-le à df.

#nouveau créé dans df_room_type_liste df['new_room_type']Ajouter en tant que.
df['new_room_type'] = new_room_type_list

je vérifierai

df
name room_type new_room_type
0 Hôtel A Chambre Twin Supérieure Non-Fumeur 1
1 Hôtel B Chambre twin supérieure fumeur 1
2 Hôtel C Chambre Twin Deluxe 1
3 Hôtel D Chambre twin standard non-fumeur 0
4 Hôtel E Une chambre double 0
5 Hôtel F Chambre Double de Luxe Non-Fumeur 1
6 Hôtel G Chambre twin standard non-fumeur 0
7 Hôtel H Chambre King Deluxe 1

J'ai pu l'ajouter comme ça.

Bonus: utilisez .str.contains ()

df['room_type'].str.contains('Supérieur')

0 True 1 True 2 False 3 False 4 False 5 False 6 False 7 False Name: room_type, dtype: bool

De cette façon, vous pouvez voir dans quelle ligne le "supérieur" apparaît, mais comme .str.contains () couvre l'intégralité du DataFrame, il ne convient pas aux instructions if qui regardent chaque ligne, donc ce qui précède Utiliser la méthode

Recommended Posts

Comment remplacer une valeur numérique pour une correspondance partielle (Remarque 1)
Remarque Python: lors de l'attribution d'une valeur à une chaîne
Comment écrire une instruction ShellScript Bash for
[Note] Comment créer un environnement de développement Ruby
[Note] Comment créer un environnement de développement Mac
[Go] Comment créer une erreur personnalisée pour Sentry
Comment créer un référentiel local pour le système d'exploitation Linux
Comment créer un environnement de développement pour TensorFlow (1.0.0) (Mac)
Comment gérer un README pour github et PyPI
Comment appeler une fonction
Comment définir plusieurs variables dans une instruction Python for
Comment créer un package Python (écrit pour un stagiaire)
[Note] Comment utiliser virtualenv
Comment rédiger un test de traitement utilisant BigQuery
Comment pirater un terminal
Comment vérifier si une valeur existe dans un type d'énumération
Comment obtenir la dernière (dernière) valeur d'une liste en Python
Remarques sur la création d'un environnement LAMP à l'aide de Vagrant et VirtulBox
Comment créer une étiquette (masque) pour la segmentation avec labelme (masque de segmentation sémantique)
Comment trouver l'adresse mémoire de la valeur de la trame de données Pandas
Spigot (Paper) Introduction à la création d'un plug-in pour 2020 # 01 (Construction de l'environnement)
Comment faire un test unitaire Part.1 Modèle de conception pour l'introduction
[Python] Comment obtenir une valeur avec une clé autre que value avec Enum
[Pour les non-programmeurs] Comment marcher Kaggle
Comment créer un bot slack
Comment créer un package Conda
Comment créer un robot - Avancé
Comment créer une fonction récursive
Comment créer un pont virtuel
Comment créer un Dockerfile (basique)
[Blender] Comment créer un plug-in Blender
Notes pour écrire du code de type Python
Comment supprimer un conteneur Docker
Comment créer un robot - Basic
Comment créer un fichier de configuration
[Python] Qu'est-ce qu'un argument formel? Comment définir la valeur initiale
Comment faire un modèle pour la détection d'objets avec YOLO en 3 heures
Comment obtenir la valeur du magasin de paramètres dans lambda (en utilisant python)
Une note lors de la recherche d'une alternative aux pandas roulant pour une fenêtre en mouvement
Comment obtenir un exemple de rapport à partir d'une valeur de hachage à l'aide de l'API de Virus Total
Comment exécuter un démarrage rapide pour Google Cloud Text-to-Speech .NET dans Unity
Comment traiter la "ValueError: Input contient NaN, infinity ou une valeur trop grande pour dtype ('float64')."
Comment créer un clone depuis Github
Comment diviser et enregistrer un DataFrame
Comment créer un environnement de traduction sphinx
Comment créer un dossier git clone
Qiita (1) Comment écrire un nom de code
Comment ajouter un package avec PyCharm
[Python] Comment rendre une classe itérable
Comment dessiner un graphique avec Matplotlib
Comment créer un fichier * .spec pour pyinstaller.
[Python] Comment convertir une liste bidimensionnelle en liste unidimensionnelle
[Colab] Comment copier un vaste ensemble de données
[Python] Comment inverser une chaîne de caractères
Comment installer un package à l'aide d'un référentiel
Comment obtenir stacktrace en python