Как вставить столбец в фрейм данных Pandas


Часто вам может понадобиться вставить новый столбец в pandas DataFrame. К счастью, это легко сделать с помощью функции вставки () pandas, которая использует следующий синтаксис:

вставка (local, столбец, значение, allow_duplicates = False)

куда:

  • loc: Индекс для вставки столбца. Первый столбец равен 0.
  • столбец: Имя для нового столбца.
  • value: Массив значений для нового столбца.
  • allow_duplicates: разрешить или запретить совпадение имени нового столбца с именем существующего столбца. По умолчанию — Ложь.

В этом руководстве показано несколько примеров использования этой функции на практике.

Пример 1: вставить новый столбец в качестве первого столбца

Следующий код показывает, как вставить новый столбец в качестве первого столбца существующего DataFrame:

import pandas as pd

#create DataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19],
 'assists': [5, 7, 7, 9, 12],
 'rebounds': [11, 8, 10, 6, 6]})

#view DataFrame
df
 points assists rebounds
0 25 5 11
1 12 7 8
2 15 7 10
3 14 9 6
4 19 12 6

#insert new column 'player' as first column
player_vals = ['A', 'B', 'C', 'D', 'E']
df.insert (loc= 0 , column='player', value=player_vals)
df

 player points assists rebounds
0 A 25 5 11
1 B 12 7 8
2 C 15 7 10
3 D 14 9 6
4 E 19 12 6

Пример 2. Вставьте новый столбец в качестве среднего столбца

Следующий код показывает, как вставить новый столбец в качестве третьего столбца существующего DataFrame:

import pandas as pd

#create DataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19],
 'assists': [5, 7, 7, 9, 12],
 'rebounds': [11, 8, 10, 6, 6]})

#insert new column 'player' as third column
player_vals = ['A', 'B', 'C', 'D', 'E']
df.insert (loc= 2 , column='player', value=player_vals)
df

 points assists player rebounds
0 25 5 A 11
1 12 7 B 8
2 15 7 C 10
3 14 9 D 6
4 19 12 E 6

Пример 3: вставить новый столбец в качестве последнего столбца

Следующий код показывает, как вставить новый столбец в качестве последнего столбца существующего DataFrame:

import pandas as pd

#create DataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19],
 'assists': [5, 7, 7, 9, 12],
 'rebounds': [11, 8, 10, 6, 6]})

#insert new column 'player' as last column
player_vals = ['A', 'B', 'C', 'D', 'E']
df.insert (loc= len(df.columns) , column='player', value=player_vals)
df

 points assists player rebounds
0 25 5 A 11
1 12 7 B 8
2 15 7 C 10
3 14 9 D 6
4 19 12 E 6

Обратите внимание, что использование len(df.columns) позволяет вставить новый столбец в качестве последнего столбца в любом фрейме данных, независимо от того, сколько столбцов в нем может быть.

Вы можете найти полную документацию по функции insert() здесь .

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.