logo

Додавання нового стовпця до існуючого 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)>

рівність об’єктів Java
>

>

Вихід:

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

порівняння рядків у java

>

>

Вихід:

  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 DataFramedf>з двома новими стовпцями, Вік і Стан, використовуючи відповідні списки даних.

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. Вибір відповідного методу залежить від конкретного контексту та бажаного результату. Опанувавши ці методи, ви зможете ефективно маніпулювати своїми даними, аналізувати їх і отримувати цінну інформацію.