Pandas: как создать новый фрейм данных из существующего фрейма данных


Существует три распространенных способа создания нового кадра данных pandas из существующего кадра данных:

Метод 1: создание нового фрейма данных с использованием нескольких столбцов из старого фрейма данных

new_df = old_df[['col1',' col2']]. copy ()

Способ 2: создать новый фрейм данных, используя один столбец из старого фрейма данных

new_df = old_df[['col1']]. copy ()

Способ 3: создать новый фрейм данных, используя все столбцы, кроме одного, из старого фрейма данных

new_df = old_df.drop('col1', axis= 1 )

В следующих примерах показано, как использовать каждый метод со следующими пандами DataFrame:

import pandas as pd

#create DataFrame
old_df = pd.DataFrame({'team': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'],
 'points': [18, 22, 19, 14, 14, 11, 20, 28],
 'assists': [5, 7, 7, 9, 12, 9, 9, 4],
 'rebounds': [11, 8, 10, 6, 6, 7, 9, 12]})

#view DataFrame
print(old_df)

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

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

#create new DataFrame from existing DataFrame
new_df = old_df[['points',' rebounds']]. copy ()

#view new DataFrame
print(new_df)

 points rebounds
0 18 11
1 22 8
2 19 10
3 14 6
4 14 6
5 11 7
6 20 9
7 28 12

#check data type of new DataFrame
type (new_df)

pandas.core.frame.DataFrame

Обратите внимание, что этот новый DataFrame содержит только столбцы точек и восстановлений из старого DataFrame.

Примечание.Важно использовать функцию copy() при создании нового DataFrame, чтобы избежать любого SettingWithCopyWarning , если нам случится каким-либо образом изменить новый DataFrame.

Пример 2: создание нового фрейма данных с использованием одного столбца из старого фрейма данных

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

#create new DataFrame from existing DataFrame
new_df = old_df[['points']]. copy ()

#view new DataFrame
print(new_df)

 points
0 18
1 22
2 19
3 14
4 14
5 11
6 20
7 28

#check data type of new DataFrame
type (new_df)

pandas.core.frame.DataFrame

Обратите внимание, что этот новый DataFrame содержит только точки и столбец из старого DataFrame.

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

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

#create new DataFrame from existing DataFrame
new_df = old_df.drop('points', axis= 1 )

#view new DataFrame
print(new_df)

 team assists rebounds
0 A 5 11
1 A 7 8
2 A 7 10
3 A 9 6
4 B 12 6
5 B 9 7
6 B 9 9
7 B 4 12

#check data type of new DataFrame
type (new_df)

pandas.core.frame.DataFrame

Обратите внимание, что этот новый DataFrame содержит все столбцы из исходного DataFrame, кроме столбца точек .

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в Python:

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

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