Comment créer une colonne vide dans Pandas DataFrame

Suraj Joshi 30 janvier 2023
  1. Créez Pandas de colonnes vides avec l’affectation simple
  2. Méthode pandas.DataFrame.reindex() pour ajouter une colonne vide dans Pandas
  3. pandas.DataFrame.assign() pour ajouter une colonne vide dans Pandas DataFrame
  4. pandas.DataFrame.insert() pour ajouter une colonne vide à un DataFrame
Comment créer une colonne vide dans Pandas DataFrame

Nous pourrions utiliser les méthodes reindex(), assign() et insert() de l’objet DataFrame pour ajouter une colonne vide à DataFrame dans Pandas. Nous pouvons également affecter directement une valeur vide à la colonne de DataFrame pour créer une colonne vide dans Pandas.

Créez Pandas de colonnes vides avec l’affectation simple

Nous pouvons directement affecter des colonnes de DataFrame à une chaîne vide, à une valeur NaN ou à une série Pandas vide pour créer une colonne vide dans Pandas.

import pandas as pd
import numpy as np

dates = ["April-20", "April-21", "April-22", "April-23", "April-24", "April-25"]
income = [10, 20, 10, 15, 10, 12]
expenses = [3, 8, 4, 5, 6, 10]


df = pd.DataFrame({"Date": dates, "Income": income, "Expenses": expenses})

df["Empty_1"] = ""
df["Empty_2"] = np.nan
df["Empty_3"] = pd.Series()

print(df)

Production:

       Date  Income  Expenses Empty_1  Empty_2  Empty_3
0  April-20      10         3              NaN      NaN
1  April-21      20         8              NaN      NaN
2  April-22      10         4              NaN      NaN
3  April-23      15         5              NaN      NaN
4  April-24      10         6              NaN      NaN
5  April-25      12        10              NaN      NaN

Il crée trois colonnes vides dans df. La colonne Empty_1 est affectée de la chaîne vide, Empty_2 est affectée de valeurs NaN et Empty_3 est affectée d’une série Pandas vide qui entraîne également des valeurs NaN de l’ensemble de Empty_3 colonne.

Méthode pandas.DataFrame.reindex() pour ajouter une colonne vide dans Pandas

Nous pouvons utiliser la méthode pandas.DataFrame.reindex() pour ajouter plusieurs colonnes vides à un DataFrame dans Pandas.

import pandas as pd
import numpy as np

dates = ["April-20", "April-21", "April-22", "April-23", "April-24", "April-25"]
income = [10, 20, 10, 15, 10, 12]
expenses = [3, 8, 4, 5, 6, 10]


df = pd.DataFrame({"Date": dates, "Income": income, "Expenses": expenses})


column_names = ["Empty_1", "Empty_2", "Empty_3"]

df = df.reindex(columns=column_names)
print(df)

Production:

   Empty_1  Empty_2  Empty_3
0      NaN      NaN      NaN
1      NaN      NaN      NaN
2      NaN      NaN      NaN
3      NaN      NaN      NaN
4      NaN      NaN      NaN
5      NaN      NaN      NaN

Le code crée de nouvelles colonnes Empty_1, Empty_2, Empty_3 dans df avec toutes les valeurs de NaN tandis que toutes les anciennes informations sont perdues.

Pour ajouter plusieurs nouvelles colonnes tout en préservant l’initiale, nous pourrions écrire du code comme suit:

import pandas as pd
import numpy as np

dates = ["April-20", "April-21", "April-22", "April-23", "April-24", "April-25"]
income = [10, 20, 10, 15, 10, 12]
expenses = [3, 8, 4, 5, 6, 10]


df = pd.DataFrame({"Date": dates, "Income": income, "Expenses": expenses})

df = df.reindex(columns=df.columns.tolist() + ["Empty_1", "Empty_2", "Empty_3"])
print(df)

Production:

       Date  Income  Expenses  Empty_1  Empty_2  Empty_3
0  April-20      10         3      NaN      NaN      NaN
1  April-21      20         8      NaN      NaN      NaN
2  April-22      10         4      NaN      NaN      NaN
3  April-23      15         5      NaN      NaN      NaN
4  April-24      10         6      NaN      NaN      NaN
5  April-25      12        10      NaN      NaN      NaN

Cela ajoute des colonnes vides Empty_1, Empty_2 et Empty_3 au df en préservant les informations initiales.

pandas.DataFrame.assign() pour ajouter une colonne vide dans Pandas DataFrame

Nous pouvons utiliser la méthode pandas.DataFrame.assign() pour ajouter une colonne vide à DataFrame dans Pandas.

import pandas as pd
import numpy as np

dates = ["April-20", "April-21", "April-22", "April-23", "April-24", "April-25"]
income = [10, 20, 10, 15, 10, 12]
expenses = [3, 8, 4, 5, 6, 10]


df = pd.DataFrame({"Date": dates, "Income": income, "Expenses": expenses})

df = df.assign(Empty_1="", Empty_2=np.nan)
print(df)

Production:

       Date  Income  Expenses Empty_1  Empty_2
0  April-20      10         3              NaN
1  April-21      20         8              NaN
2  April-22      10         4              NaN
3  April-23      15         5              NaN
4  April-24      10         6              NaN
5  April-25      12        10              NaN

Il crée une colonne vide nommée Empty_1 et Empty_2 contenant uniquement des valeurs NaN dans le df.

pandas.DataFrame.insert() pour ajouter une colonne vide à un DataFrame

pandas.DataFrame.insert() nous permet d’insérer une colonne dans un DataFrame à emplacement spécifié. Nous pouvons utiliser cette méthode pour ajouter une colonne vide à un DataFrame.

Syntaxe:

DataFrame.insert(loc, column, value, allow_duplicates=False)

Il crée une nouvelle colonne avec le nom colonne à l’emplacement loc avec la valeur par défaut value. allow_duplicates=False garantit qu’il n’y a qu’une seule colonne avec le nom column dans le dataFrame. Si nous transmettons une chaîne vide ou une valeur NaN comme paramètre de valeur, nous pouvons ajouter une colonne vide au DataFrame.

import pandas as pd
import numpy as np

dates = ["April-20", "April-21", "April-22", "April-23", "April-24", "April-25"]
income = [10, 20, 10, 15, 10, 12]
expenses = [3, 8, 4, 5, 6, 10]


df = pd.DataFrame({"Date": dates, "Income": income, "Expenses": expenses})
df.insert(3, "Empty_1", "")
df.insert(4, "Empty_2", np.nan)
print(df)

Production:

       Date  Income  Expenses Empty_1  Empty_2
0  April-20      10         3              NaN
1  April-21      20         8              NaN
2  April-22      10         4              NaN
3  April-23      15         5              NaN
4  April-24      10         6              NaN
5  April-25      12        10              NaN

Il crée la colonne Empty_1 dans df avec toutes les valeurs vides à l’index 3 et Empty_2 à l’index 4 avec toutes les valeurs de NaN.

Auteur: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn

Article connexe - Pandas DataFrame Column

Article connexe - Pandas DataFrame