Dodanie nowej kolumny do istniejącej ramki danych w Pandach
Dodawanie nowych kolumn do istniejącej ramki DataFrame jest podstawowym zadaniem w analizie danych z wykorzystaniem Pandy . Pozwala wzbogacić dane o dodatkowe informacje oraz ułatwić dalszą analizę i manipulację. W tym artykule zostaną omówione różne metody dodawania nowych kolumn, w tym proste przypisywanie insert()> metoda, assign()> metoda. Omówmy dodanie nowych kolumn do istniejącej ramki DataFrame Pandy.
Co to jest ramka danych Pandy?
A Ramka danych Pandy to dwuwymiarowa, potencjalnie heterogeniczna tabelaryczna struktura danych o zmiennym rozmiarze, z oznaczonymi osiami (wiersze i kolumny). Jest to podstawowa struktura danych w ekosystemie nauki o danych Pythona i zapewnia zaawansowany sposób pracy z danymi tabelarycznymi.
Oto kilka kluczowych cech Pandas DataFrame:
- Reprezentacja danych: Przechowuje dane w formacie tabeli z wierszami i kolumnami.
- Heterogeniczne typy danych: Może przechowywać różne typy danych w różnych kolumnach (np. liczby całkowite, zmiennoprzecinkowe, łańcuchy znaków, wartości logiczne).
- Etykietowanie: Każdy wiersz i kolumna ma etykietę (nazwy indeksu i kolumny).
- Zmienny: Umożliwia manipulację i modyfikację danych.
- Potężne operacje: Zapewnia różne funkcje i metody analizy, manipulacji i eksploracji danych.
- Rozciągliwy: Można go dostosowywać i rozszerzać o dodatkowe funkcjonalności za pośrednictwem bibliotek i funkcji zdefiniowanych przez użytkownika.
Istnieje wiele sposobów dodania nowej kolumny do istniejącej ramki danych w Pandach Pyton :
- Tworzenie przykładowej ramki danych
- Używając Dataframe.insert() metoda
- Używając Ramka danych.przypisać() metoda
- Korzystanie ze słownika
- Korzystanie z listy
- Za pomocą .miejsce()
- Dodawanie więcej niż jednej kolumny w istniejącej ramce danych
Tworzenie przykładowej ramki danych
Tutaj tworzymy przykładową ramkę danych:
Python3
import> pandas as pd> data> => {> 'Name'> : [> 'Jai'> ,> 'Princi'> ,> 'Gaurav'> ,> 'Anuj'> ],> > 'Height'> : [> 5.1> ,> 6.2> ,> 5.1> ,> 5.2> ],> > 'Qualification'> : [> 'Msc'> ,> 'MA'> ,> 'Msc'> ,> 'Msc'> ]}> df> => pd.DataFrame(data)> print> (df)> |
Wyjście:
Name Height Qualification 0 Jai 5.1 Msc 1 Princi 6.2 MA 2 Gaurav 5.1 Msc 3 Anuj 5.2 Msc
Pamiętaj, że długość listy powinna odpowiadać długości kolumny indeksu, w przeciwnym razie wyświetli się błąd.
Dodaj nową kolumnę do istniejącej ramki danych za pomocą DataFrame.insert()
Daje swobodę dodania kolumny w dowolnej pozycji, a nie tylko na końcu. Zapewnia także różne opcje wstawiania wartości kolumn.
Python3
import> pandas as pd> # Define a dictionary containing Students data> data> => {> 'Name'> : [> 'Jai'> ,> 'Princi'> ,> 'Gaurav'> ,> 'Anuj'> ],> > 'Height'> : [> 5.1> ,> 6.2> ,> 5.1> ,> 5.2> ],> > 'Qualification'> : [> 'Msc'> ,> 'MA'> ,> 'Msc'> ,> 'Msc'> ]}> # Convert the dictionary into DataFrame> df> => pd.DataFrame(data)> # Using DataFrame.insert() to add a column> df.insert(> 2> ,> 'Age'> , [> 21> ,> 23> ,> 24> ,> 21> ],> True> )> # Observe the result> print> (df)> |
Wyjście:
Name Height Age Qualification 0 Jai 5.1 21 Msc 1 Princi 6.2 23 MA 2 Gaurav 5.1 24 Msc 3 Anuj 5.2 21 Msc
Dodawanie kolumn do Pandas DataFrame przy użyciu Dataframe.sign()
Ta metoda utworzy nową ramkę danych z nową kolumną dodaną do starej ramki danych.
Python3
import> pandas as pd> # Define a dictionary containing Students data> data> => {> 'Name'> : [> 'Jai'> ,> 'Princi'> ,> 'Gaurav'> ,> 'Anuj'> ],> > 'Height'> : [> 5.1> ,> 6.2> ,> 5.1> ,> 5.2> ],> > 'Qualification'> : [> 'Msc'> ,> 'MA'> ,> 'Msc'> ,> 'Msc'> ]}> # Convert the dictionary into DataFrame> df> => pd.DataFrame(data)> # Using 'Address' as the column name and equating it to the list> df2> => df.assign(address> => [> 'Delhi'> ,> 'Bangalore'> ,> 'Chennai'> ,> 'Patna'> ])> print> (df2)> |
Wyjście:
Name Height Qualification address 0 Jai 5.1 Msc Delhi 1 Princi 6.2 MA Bangalore 2 Gaurav 5.1 Msc Chennai 3 Anuj 5.2 Msc Patna
Pandy Dodaj kolumnę do DataFrame za pomocą słownika
Możemy użyć A Słownik Pythona aby dodać nową kolumnę w pandas DataFrame. Użyj istniejącej kolumny jako wartości kluczowych, a odpowiadające im wartości będą wartościami nowej kolumny.
Python3
# Import pandas package> import> pandas as pd> # Define a dictionary containing Students data> data> => {> 'Name'> : [> 'Jai'> ,> 'Princi'> ,> 'Gaurav'> ,> 'Anuj'> ],> > 'Height'> : [> 5.1> ,> 6.2> ,> 5.1> ,> 5.2> ],> > 'Qualification'> : [> 'Msc'> ,> 'MA'> ,> 'Msc'> ,> 'Msc'> ]}> # Define a dictionary with key values of> # an existing column and their respective> # value pairs as the # values for our new column.> address> => {> 'Delhi'> :> 'Jai'> ,> 'Bangalore'> :> 'Princi'> ,> > 'Patna'> :> 'Gaurav'> ,> 'Chennai'> :> 'Anuj'> }> # Convert the dictionary into DataFrame> df> => pd.DataFrame(data)> # Provide 'Address' as the column name> df[> 'Address'> ]> => address> # Observe the output> print> (df)> |
Wyjście:
Name Height Qualification Address 0 Jai 5.1 Msc Delhi 1 Princi 6.2 MA Bangalore 2 Gaurav 5.1 Msc Chennai 3 Anuj 5.2 Msc Patna
Dodawanie nowej kolumny do ramki danych Pandas za pomocą listy
W tym przykładzie Pandy dodają nowe kolumny z listy Adres do istniejącej ramki danych Pandas przy użyciu słownika i listy.
Python3
# Declare a list that is to be converted into a column> address> => [> 'Delhi'> ,> 'Bangalore'> ,> 'Chennai'> ,> 'Patna'> ]> # Using 'Address' as the column name> # and equating it to the list> df[> 'Address'> ]> => address> print> (df)> |
Wyjście:
Name Height Qualification Address 0 Jai 5.1 Msc Delhi 1 Princi 6.2 MA Bangalore 2 Gaurav 5.1 Msc Chennai 3 Anuj 5.2 Msc Patna
Dodaj nową kolumnę do istniejącej ramki danych Pandas za pomocą Dataframe.loc()
W tym przykładzie tworzy Pandas DataFrame o nazwie df> z kolumnami Nazwa, Wysokość i Kwalifikacja i dodaje nową kolumnę Adres za pomocą loc> atrybut.
Python3
import> pandas as pd> data> => {> 'Name'> : [> 'Jai'> ,> 'Princi'> ,> 'Gaurav'> ,> 'Anuj'> ],> > 'Height'> : [> 5.1> ,> 6.2> ,> 5.1> ,> 5.2> ],> > 'Qualification'> : [> 'Msc'> ,> 'MA'> ,> 'Msc'> ,> 'Msc'> ]}> df> => pd.DataFrame(data)> # Create the list of new column values> address> => [> 'Delhi'> ,> 'Bangalore'> ,> 'Chennai'> ,> 'Patna'> ]> # Add the new column using loc> df.loc[:,> 'Address'> ]> => address> print> (df)> |
Wyjście:
Name Height Qualification Address 0 Jai 5.1 Msc Delhi 1 Princi 6.2 MA Bangalore 2 Gaurav 5.1 Msc Chennai 3 Anuj 5.2 Msc Patna
Dodawanie więcej niż jednej kolumny w istniejącej ramce danych
W tym przykładzie rozwija istniejącą ramkę danych Pandas df> z dwiema nowymi kolumnami, Wiek i Stan, przy użyciu odpowiednich list danych.
Python3
import> pandas as pd> data> => {> 'Name'> : [> 'Jai'> ,> 'Princi'> ,> 'Gaurav'> ,> 'Anuj'> ],> > 'Height'> : [> 5.1> ,> 6.2> ,> 5.1> ,> 5.2> ],> > 'Qualification'> : [> 'Msc'> ,> 'MA'> ,> 'Msc'> ,> 'Msc'> ],> > 'Address'> : [> 'Delhi'> ,> 'Bangalore'> ,> 'Chennai'> ,> 'Patna'> ]}> df> => pd.DataFrame(data)> # Define new data for additional columns> age> => [> 22> ,> 25> ,> 23> ,> 24> ]> state> => [> 'NCT'> ,> 'Karnataka'> ,> 'Tamil Nadu'> ,> 'Bihar'> ]> # Add multiple columns using dictionary assignment> new_data> => {> 'Age'> : age,> 'State'> : state }> df> => df.assign(> *> *> new_data)> print> (df)> |
Wyjście:
Name Height Qualification Address Age State 0 Jai 5.1 Msc Delhi 22 NCT 1 Princi 6.2 MA Bangalore 25 Karnataka 2 Gaurav 5.1 Msc Chennai 23 Tamil Nadu 3 Anuj 5.2 Msc Patna 24 Bihar
Wniosek
Zrozumienie sposobu dodawania nowych kolumn do DataFrames jest niezbędne do eksploracji i manipulacji danymi w Pandach. Wybór odpowiedniej metody zależy od konkretnego kontekstu i pożądanego rezultatu. Opanowując te techniki, możesz skutecznie manipulować danymi, analizować je i uzyskiwać cenne informacje.