Pandas insert-Methode
-
pandas.DataFrame.insert()Methode in Python -
Setzen Sie
allow_duplicates = Truein der Methodeinsert(), um eine bereits existierende Spalte hinzuzufügen
Dieses Tutorial erklärt, wie wir die Methode insert() für einen Pandas DataFrame verwenden können, um eine Spalte in den DataFrame einzufügen.
import pandas as pd
countries_df = pd.DataFrame(
{
"Country": ["Nepal", "Switzerland", "Germany", "Canada"],
"Continent": ["Asia", "Europe", "Europe", "North America"],
"Primary Language": ["Nepali", "French", "German", "English"],
}
)
print("Countries DataFrame:")
print(countries_df, "\n")
Ausgabe:
Countries DataFrame:
Country Continent Primary Language
0 Nepal Asia Nepali
1 Switzerland Europe French
2 Germany Europe German
3 Canada North America English
Anhand des DataFrames countries_df aus dem obigen Beispiel wird erklärt, wie man die Methode insert() für einen Pandas DataFrame verwenden kann, um eine Spalte in den DataFrame einzufügen.
pandas.DataFrame.insert() Methode in Python
Syntax
DataFrame.insert(loc, column, value, allow_duplicates=False)
Sie fügt die Spalte mit dem Namen column in den DataFrame mit den durch value angegebenen Werten an der Position loc ein.
Einfügen einer Spalte mit gleichem Wert für alle Zeilen mit der Methode insert()
import pandas as pd
countries_df = pd.DataFrame(
{
"Country": ["Nepal", "Switzerland", "Germany", "Canada"],
"Continent": ["Asia", "Europe", "Europe", "North America"],
"Primary Language": ["Nepali", "French", "German", "English"],
}
)
print("Countries DataFrame:")
print(countries_df, "\n")
countries_df.insert(3, "Capital", "Unknown")
print("Countries DataFrame after inserting Capital column:")
print(countries_df)
Ausgabe:
Countries DataFrame:
Country Continent Primary Language
0 Nepal Asia Nepali
1 Switzerland Europe French
2 Germany Europe German
3 Canada North America English
Countries DataFrame after inserting Capital column:
Country Continent Primary Language Capital
0 Nepal Asia Nepali Unknown
1 Switzerland Europe French Unknown
2 Germany Europe German Unknown
3 Canada North America English Unknown
Es wird die Spalte Capital in den DataFrame countries_df an Position 3 eingefügt, wobei für alle Zeilen der gleiche Wert der Spalte auf Unknown gesetzt wird.
Die Position beginnt bei 0 und somit bezieht sich die Position 3 auf die 4te Spalte im DataFrame.
Einfügen einer Spalte in einen DataFrame mit Angabe des Wertes für jede Zeile
Wenn wir die Werte jeder Zeile für die einzufügende Spalte mit der Methode insert() angeben wollen, können wir eine Liste von Werten als Argument value in der Methode insert() übergeben.
import pandas as pd
countries_df = pd.DataFrame(
{
"Country": ["Nepal", "Switzerland", "Germany", "Canada"],
"Continent": ["Asia", "Europe", "Europe", "North America"],
"Primary Language": ["Nepali", "French", "German", "English"],
}
)
print("Countries DataFrame:")
print(countries_df, "\n")
capitals = ["Kathmandu", "Zurich", "Berlin", "Ottawa"]
countries_df.insert(2, "Capital", capitals)
print("Countries DataFrame after inserting Capital column:")
print(countries_df)
Ausgabe:
Countries DataFrame:
Country Continent Primary Language
0 Nepal Asia Nepali
1 Switzerland Europe French
2 Germany Europe German
3 Canada North America English
Countries DataFrame after inserting Capital column:
Country Continent Capital Primary Language
0 Nepal Asia Kathmandu Nepali
1 Switzerland Europe Zurich French
2 Germany Europe Berlin German
3 Canada North America Ottawa English
Es wird die Spalte Capital in den DataFrame countries_df an der Position 2 mit den angegebenen Werten jeder Zeile für die Spalte Capital im DataFrame eingefügt.
Setzen Sie allow_duplicates = True in der Methode insert(), um eine bereits existierende Spalte hinzuzufügen
import pandas as pd
countries_df = pd.DataFrame(
{
"Country": ["Nepal", "Switzerland", "Germany", "Canada"],
"Continent": ["Asia", "Europe", "Europe", "North America"],
"Primary Language": ["Nepali", "French", "German", "English"],
"Capital": ["Kathmandu", "Zurich", "Berlin", "Ottawa"],
}
)
print("Countries DataFrame:")
print(countries_df, "\n")
capitals = ["Kathmandu", "Zurich", "Berlin", "Ottawa"]
countries_df.insert(4, "Capital", capitals, allow_duplicates=True)
print("Countries DataFrame after inserting Capital column:")
print(countries_df)
Ausgabe:
Countries DataFrame:
Country Continent Primary Language Capital
0 Nepal Asia Nepali Kathmandu
1 Switzerland Europe French Zurich
2 Germany Europe German Berlin
3 Canada North America English Ottawa
Countries DataFrame after inserting Capital column:
Country Continent Primary Language Capital Capital
0 Nepal Asia Nepali Kathmandu Kathmandu
1 Switzerland Europe French Zurich Zurich
2 Germany Europe German Berlin Berlin
3 Canada North America English Ottawa Ottawa
Es wird die Spalte Capital zum DataFrame countries_df hinzugefügt, obwohl die Spalte Capital bereits im DataFrame countries_df existiert.
Wenn wir versuchen, die Spalte einzufügen, die bereits im DataFrame vorhanden ist, ohne in der Methode insert() die Option allow_duplicates = True zu setzen, wird ein Fehler mit der Meldung ausgegeben: ValueError: cannot insert column, already exists.
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedInVerwandter Artikel - Pandas DataFrame Column
- Wie man Pandas DataFrame-Spaltenüberschriften als Liste erhält
- Pandas DataFrame-Spalte löschen
- Wie man DataFrame-Spalte in Datetime in Pandas konvertiert
- So erhalten Sie die Summe der Pandas-Spalte
- Wie man die Reihenfolge der Pandas DataFrame-Spalten ändert
- Wie man eine DataFrame-Spalte in eine Zeichenkette in Pandas konvertiert
