[PYTHON] Vérifiez si la colonne attendue existe dans Pandas DataFrame

Par exemple, supposons qu'il existe la "fonction qui traite DataFrame" suivante.

import pandas as pd

def preprocess(df: pd.DataFrame) -> pd.DataFrame:
    df["full_name"] = df["first_name"] + " " + df["last_name"]
    return df

L'argument DataFrame pour cette fonction devrait contenir les colonnes «first_name» et «last_name», mais vous pouvez vérifier cela au début de la fonction.

Cela peut être facilement écrit en utilisant l'opération set type [^ set].

import pandas as pd

def preprocess(df: pd.DataFrame) -> pd.DataFrame:
    required_columns = {"first_name", "last_name"}
    if not required_columns <= set(df.columns):
        raise ValueError(f"missing columns: {required_columns - set(df.columns)}")
    df["full_name"] = df["first_name"] + " " + df["last_name"]
    return df

Si vous l'écrivez comme ceci, il lancera une ValueError si la colonne requise est manquante.

df = pd.DataFrame([{"first_name": "John", "age": 30}])  # 'last_name'DataFrame avec des colonnes manquantes
preprocess(df)  #=> ValueError: missing columns: {'last_name'}

Recommended Posts

Vérifiez si la colonne attendue existe dans Pandas DataFrame
Vérifiez si l'URL existe en Python
[Pandas] Si les données de la première ligne sont dans l'en-tête de DataFrame
Y a-t-il NaN dans le DataFrame pandas?
Vérifiez si les caractères sont similaires en Python
Dans bash, "supprimez le fichier s'il existe".
Vérifiez si la chaîne est un nombre en python
Vérifiez s'il s'agit d'Unix dans le langage de script
Vérifiez s'il s'agit d'Unix dans le langage de script
Combinez des listes dans un DataFrame avec des pandas
Fonction pratique pour ajouter des colonnes n'importe où dans Pandas DataFrame
Comment vérifier si une valeur existe dans un type d'énumération
python / pandas / dataframe / Comment obtenir la ligne / colonne / index / colonne la plus simple
Vérifiez si le fichier de paramètres est lu de manière simple à comprendre
Vérifiez si le hachage de mot de passe généré par PHP correspond en Python
Vérifiez le résumé des données dans CASTable
Je veux faire de la deuxième ligne le nom de la colonne dans pandas
Parcourir .loc et .iloc en même temps dans pandas DataFrame
[Golang] Vérifiez si une chaîne de caractères spécifique est incluse dans la chaîne de caractères
Comment obtenir un nom de colonne et un nom d'index spécifiques avec Pandas DataFrame
Si vous obtenez une erreur sans attribut dans boto3, vérifiez la version
Vérifiez le comportement du destroyer en Python
Mettre à jour les éléments Pandas DataFrame par nom de colonne
Obtenez les nièmes valeurs les plus importantes dans Pandas
Comment réattribuer un index dans pandas dataframe
[Pandas] Développer les chaînes de caractères en DataFrame
Remplacez les noms / valeurs des colonnes par pandas dataframe
12. Enregistrez la première colonne dans col1.txt et la deuxième colonne dans col2.txt
Supprimer les lignes avec des valeurs arbitraires dans pandas DataFrame
Déterminer s'il y a des oiseaux dans l'image
[Python] Trier la table par sort_values (pandas DataFrame)
Supprimer les lignes avec des index en double dans pandas DataFrame
Créer un dossier Python Vérifiez s'il existe déjà
Enregistrer Pandas DataFrame en tant que .csv.gz dans Amazon S3
Comment vérifier en Python si l'un des éléments d'une liste est dans une autre liste