Додавання нового стовпця до існуючого DataFrame в Pandas

Додавання нових стовпців до існуючого DataFrame є фундаментальним завданням у використанні аналізу даних панди . Це дозволяє збагатити ваші дані додатковою інформацією та полегшити подальший аналіз і маніпуляції. У цій статті розглядатимуться різні методи додавання нових стовпців, у тому числі просте призначення insert()> метод, в assign()> метод. Давайте обговоримо додавання нових стовпців до існуючого DataFrame Pandas.

Що таке Pandas DataFrame?

А Pandas DataFrame це двовимірна, змінна розміром, потенційно неоднорідна таблична структура даних із позначеними осями (рядки та стовпці). Це фундаментальна структура даних в екосистемі науки про дані Python і забезпечує потужний спосіб роботи з табличними даними.

Ось деякі ключові особливості Pandas DataFrame:

  • Представлення даних: Зберігає дані у форматі таблиці з рядками та стовпцями.
  • Різнорідні типи даних: Може містити різні типи даних у різних стовпцях (наприклад, цілі числа, числа з плаваючою речовиною, рядки, логічні значення).
  • Маркування: Кожен рядок і стовпець мають мітку (індекс і назви стовпців).
  • Змінний: Дозволяє маніпулювати та модифікувати дані.
  • Потужні операції: Надає різні функції та методи для аналізу даних, маніпуляції та дослідження.
  • розширюється: Можна налаштувати та розширити додатковими функціями за допомогою бібліотек і призначених для користувача функцій.

Є кілька способів додати новий стовпець до існуючого DataFrame в Pandas in Python :

  • Створення зразка фрейму даних
  • З допомогою Dataframe.insert() метод
  • З допомогою Dataframe.assign() метод
  • Використання словника
  • Використання списку
  • Використання .place()
  • Додавання більше ніж одного стовпця в існуючий фрейм даних

Створення зразка фрейму даних

Тут ми створюємо зразок фрейму даних:

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)>

Вихід:

   Name Height Qualification     0    Jai 5.1 Msc   1    Princi 6.2 MA   2   Gaurav 5.1 Msc   3   Anuj 5.2 Msc 

Зауважте, що довжина вашого списку має відповідати довжині стовпця індексу, інакше він покаже помилку.

Додайте новий стовпець до існуючого Datframe за допомогою DataFrame.insert()

Це дає свободу додавати стовпець у будь-якій позиції, а не лише в кінці. Він також надає різні параметри для вставки значень стовпців.

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)>

Вихід:

  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 

Додавання стовпців до Pandas DataFrame за допомогою Dataframe.assign()

Цей метод створить новий фрейм даних із новим стовпцем, доданим до старого фрейму даних.

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)>

Вихід:

   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 

Pandas додає стовпець до DataFrame за допомогою словника

Ми можемо використовувати a Словник Python щоб додати новий стовпець у pandas DataFrame. Використовуйте наявний стовпець як ключові значення, а їхні відповідні значення будуть значеннями для нового стовпця.

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)>

Вихід:

  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 

Додавання нового стовпця до Pandas DataFrame за допомогою списку

У цьому прикладі Панди додають нові стовпці зі списку Зверніться до існуючого Pandas DataFrame за допомогою словника та списку.

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)>

Вихід:

  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 

Додайте новий стовпець до існуючого Pandas DataFrame за допомогою Dataframe.loc()

У цьому прикладі створюється Pandas DataFrame з іменем df> зі стовпцями Ім’я, Зріст і Кваліфікація та додає новий стовпець Адреса за допомогою loc> атрибут.

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)>

Вихід:

  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 

Додавання більше ніж одного стовпця в існуючий фрейм даних

У цьому прикладі він розширює існуючий Pandas DataFrame df> з двома новими стовпцями, Вік і Стан, використовуючи відповідні списки даних.

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)>

Вихід:

   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 

Висновок

Розуміння того, як додавати нові стовпці до DataFrames, має важливе значення для дослідження та маніпулювання даними в Pandas. Вибір відповідного методу залежить від конкретного контексту та бажаного результату. Опанувавши ці методи, ви зможете ефективно маніпулювати своїми даними, аналізувати їх і отримувати цінну інформацію.



Кращі Статті

Категорія