Pandas: как создать новый dataframe из существующего dataframe
Существует три распространенных способа создания нового DataFrame pandas из существующего DataFrame:
Способ 1. Создайте новый DataFrame, используя несколько столбцов из старого DataFrame.
new_df = old_df[[' col1 ', ' col2 ']]. copy ()
Способ 2. Создайте новый DataFrame, используя столбец из старого DataFrame.
new_df = old_df[[' col1 ']]. copy ()
Способ 3. Создайте новый DataFrame, используя все столбцы из старого DataFrame, кроме одного.
new_df = old_df. drop (' col1 ', axis= 1 )
В следующих примерах показано, как использовать каждый метод со следующим DataFrame pandas:
import pandas as pd #createDataFrame 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.
Следующий код показывает, как создать новый DataFrame, используя несколько столбцов из старого DataFrame:
#create new DataFrame from existing DataFrame
new_df = old_df[[' points ', ' rebounds ']]. copy ()
#view new DataFrame
print (new_df)
rebound points
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.
Следующий код показывает, как создать новый 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, кроме одного.
Следующий код показывает, как создать новый 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 to 5 11
1 to 7 8
2 to 7 10
3 to 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:
Как создать пустой DataFrame Pandas с именами столбцов
Как добавить столбец в DataFrame Pandas
Как добавить несколько столбцов в Pandas DataFrame