HOWTO · Pandas
Seleccionar Várias Colunas em Pandas Dataframe
Este tutorial demonstra como seleccionar múltiplas colunas de um quadro de dados usando a sintaxe getitem(os []'s), iloc(), e loc()
Nesta página
Podemos enfrentar problemas ao extrair dados de múltiplas colunas de um DataFrame Pandas, principalmente porque tratam o DataFrame como um array bidimensional. Para seleccionar múltiplas colunas de um DataFrame, podemos utilizar ou o método básico de indexação, passando a lista de nomes de colunas para a sintaxe __getitem__ ([]), ou os métodos iloc() e loc() fornecidos pela biblioteca Pandas. Para este tutorial, seleccionaremos várias colunas a partir do seguinte DataFrame.
Exemplo DataFrame:
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.rand(4, 4), columns=["a", "b", "c", "d"])
print(df)
Resultado:
a b c d
0 0.255086 0.282203 0.342223 0.263599
1 0.744271 0.591687 0.861554 0.871859
2 0.420066 0.713664 0.770193 0.207427
3 0.014447 0.352515 0.535801 0.119759
Utilize __getitem__ Sintaxe ([]) para Seleccionar Múltiplas Colunas
Ao armazenar os nomes das colunas a serem extraídas numa lista e depois passá-la para o [], podemos seleccionar várias colunas do DataFrame. O código seguinte explicará como podemos seleccionar as colunas a e c a partir do DataFrame anteriormente mostrado.
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.rand(4, 4), columns=["a", "b", "c", "d"])
print(df[["a", "c"]])
Resultado:
a c
0 0.255086 0.342223
1 0.744271 0.861554
2 0.420066 0.770193
3 0.014447 0.535801
Utilizar os métodos iloc() e loc() para seleccionar múltiplas colunas em Pandas
Podemos também utilizar os métodos iloc() e loc() para seleccionar várias colunas.
Quando queremos utilizar os índices das colunas para as extrair, podemos utilizar o iloc() como se mostra no exemplo abaixo:
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.rand(4, 4), columns=["a", "b", "c", "d"])
print(df.iloc[:, [0, 2]])
Resultado:
a c
0 0.255086 0.342223
1 0.744271 0.861554
2 0.420066 0.770193
3 0.014447 0.535801
Da mesma forma, podemos utilizar loc() quando pretendemos seleccionar colunas utilizando os seus nomes, como se mostra abaixo:
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.rand(4, 4), columns=["a", "b", "c", "d"])
print(df.loc[:, ["a", "c"]])
Resultado:
a c
0 0.255086 0.342223
1 0.744271 0.861554
2 0.420066 0.770193
3 0.014447 0.535801