Существует три распространенных способа создания нового кадра данных 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