[PYTHON] Dans pandas.DataFrame, même lors de l'attribution d'une seule colonne spécifique, si l'index est attaché, vous n'avez pas à vous soucier de l'ordre des données

Ce que j'ai trouvé

Lors de l'affectation d'une valeur de type DataFrame à un DataFrame colonne par colonne, même si l'ordre des données est différent, si les index correspondent, la valeur peut être affectée telle quelle. Il peut être utile de savoir lors de l'extraction de certaines colonnes du DataFrame, de leur traitement selon les conditions et de leur renvoi.

Environnement éprouvé

Exemple de code

Préparez le module et les données

import numpy as np
import pandas as pd

# 0-4 dans une séquence de 19*Formater en 5 et convertir en dataframe
df = pd.DataFrame(np.arange(20).reshape((4,5)), columns = list("abcde"))

#     a   b   c   d   e
# 0   0   1   2   3   4
# 1   5   6   7   8   9
# 2  10  11  12  13  14
# 3  15  16  17  18  19

Créer un DataFrame avec quelques colonnes extraites et traiter les valeurs

df_e_1 = df.loc[[0,2], ["e"]]
#     e
# 0   4
# 2  14

df_e_1["e"] += 300
#      e
# 0  304
# 2  314

Créez un DataFrame avec certaines colonnes extraites et combinez-le avec les données traitées ci-dessus.

df_e_2 = df.loc[[1,3], ["e"]]
#     e
# 1   9
# 3  19

df_e = pd.concat([df_e_1, df_e_2])
#      e
# 0  304
# 2  314
# 1    9
# 3   19

Je pensais que si df_e n'était pas organisé dans l'ordre d'index ici, l'ordre des données serait dans le désordre même s'il était affecté au DataFrame d'origine ... Même si vous le remplacez tel quel, il correspondra à l'index et sera automatiquement trié et remplacé. Veuillez faire attention à la colonne e ci-dessous

df["e"] = df_e
print(df)
#     a   b   c   d    e
# 0   0   1   2   3  304
# 1   5   6   7   8    9
# 2  10  11  12  13  314
# 3  15  16  17  18   19

Recommended Posts

Dans pandas.DataFrame, même lors de l'attribution d'une seule colonne spécifique, si l'index est attaché, vous n'avez pas à vous soucier de l'ordre des données
Que faire si vous obtenez l'erreur RuntimeError: Python n'est pas installé en tant que framework lorsque vous essayez d'utiliser matplitlib et pylab dans Python 3.3
Que faire si la barre de progression n'est pas affichée dans tqdm de python
Que faire si vous obtenez `locale.Error: unsupported locale setting` lors de l'obtention de la date du jour en Python
Ne changez pas l'ordre des colonnes lors de la concaténation des trames de données pandas.
Que faire si vous obtenez une erreur de mémoire lors de la conversion de PySparkDataFrame en PandasDataFrame
Que faire lorsque seule la fenêtre est affichée et que rien ne s'affiche dans le pygame
Comment vérifier en Python si l'un des éléments d'une liste est dans une autre liste
Pour extraire des données dans une colonne spécifique dans une feuille spécifique dans plusieurs fichiers Excel à la fois et mettre les données dans chaque colonne sur une ligne
Que faire si la bibliothèque ne se charge pas lorsqu'elle est exécutée avec PyCharm, même si cela fonctionne bien avec le terminal
Que faire si vous avez corrigé l'erreur dans l'adresse IP du fichier de zone mais ne pouvez pas vous connecter au serveur DNS
Notez ce que vous voulez faire à l'avenir avec Razpai
Obtenir la valeur d'une clé spécifique jusqu'à l'index spécifié de la liste de dictionnaires en Python
Que faire si l'image n'est pas affichée à l'aide de matplotlib etc. dans le conteneur Docker
Que faire lorsqu'un artefact manquant se produit dans un fichier jar qui n'est pas défini dans pom.xml
Ce que vous ne devriez pas faire dans le processus d'analyse des données de séries chronologiques (y compris la réflexion)
Lorsqu'une chaîne de caractères d'une certaine série se trouve dans la clé du dictionnaire, la chaîne de caractères est convertie en valeur du dictionnaire.
[Python] Extrait les blocs de données de Pandas qui ne correspondent pas à une colonne spécifique avec d'autres blocs de données
Soyez prudent lorsque vous attribuez une série en tant que colonne aux pandas.
Que faire si vous chattez ou suivez un fichier binaire et que le terminal est brouillé
Écrivez un script dans Shell et Python pour vous avertir dans Slack lorsque le processus est terminé
[Django] Que faire quand il y a de nombreux champs dans le modèle que vous souhaitez créer
Que faire lorsqu'une partie de l'image d'arrière-plan devient transparente lorsque l'image transparente est combinée avec Oreiller
Que faire si vous obtenez une erreur de remplacement obligatoire `get_config` lorsque vous essayez de model.save avec Keras
Que faire si vous obtenez moins zéro en Python
Que faire si vous ne pouvez pas utiliser la poubelle dans Lubuntu 18.04.
[Golang] Vérifiez si une chaîne de caractères spécifique est incluse dans la chaîne de caractères
Que faire lorsque le type de valeur est ambigu en Python?
Que faire si vous obtenez "La session n'a pas pu être ouverte" lors de l'installation de CentOS sur VirtualBox
Que faire si vous obtenez un avertissement "Mauvaise plateforme Python" lors de l'utilisation de Python avec l'EDI NetBeans
Si vous souhaitez changer d'utilisateur d'exécution au milieu d'une tâche Fabric, le gestionnaire de contexte des paramètres
[Python] Que faire en cas de violation de PEP8 lors du processus d'importation à partir du répertoire ajouté à sys.path