Pandas: como criar um novo dataframe a partir de um dataframe existente
Existem três maneiras comuns de criar um novo DataFrame do pandas a partir de um DataFrame existente:
Método 1: Crie um novo DataFrame usando várias colunas do DataFrame antigo
new_df = old_df[[' col1 ', ' col2 ']]. copy ()
Método 2: Crie um novo DataFrame usando uma coluna do DataFrame antigo
new_df = old_df[[' col1 ']]. copy ()
Método 3: Crie um novo DataFrame usando todas as colunas do antigo DataFrame, exceto uma
new_df = old_df. drop (' col1 ', axis= 1 )
Os exemplos a seguir mostram como usar cada método com o seguinte DataFrame do 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)
Exemplo 1: Crie um novo DataFrame usando várias colunas do antigo DataFrame
O código a seguir mostra como criar um novo DataFrame usando várias colunas do DataFrame antigo:
#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
Observe que este novo DataFrame contém apenas as colunas de pontos e saltos do antigo DataFrame.
Nota : É importante usar a função copy() ao criar o novo DataFrame para evitar qualquer SettingWithCopyWarning se modificarmos o novo DataFrame de alguma forma.
Exemplo 2: Crie um novo DataFrame usando uma coluna do antigo DataFrame
O código a seguir mostra como criar um novo DataFrame usando uma coluna do DataFrame antigo:
#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
Observe que este novo DataFrame contém apenas os pontos e colunas do antigo DataFrame.
Exemplo 3: Crie um novo DataFrame usando todas as colunas do antigo DataFrame, exceto uma
O código a seguir mostra como criar um novo DataFrame usando todas as colunas do DataFrame antigo, exceto uma:
#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
Observe que este novo DataFrame contém todas as colunas do DataFrame original , exceto a coluna de pontos .
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras tarefas comuns em Python:
Como criar um Pandas DataFrame vazio com nomes de colunas
Como adicionar uma coluna a um DataFrame do Pandas
Como adicionar várias colunas ao Pandas DataFrame