3
respostas

É possível criar uma Series a partir de duas colunas de um DataFrame

Considerando um DataFrame notas, com duas colunas.

Ana Pedro

5    6
4    8

Caso a Series fosse construída da seguinte forma: pd.Series(notas.Ana.values, index = notas.Pedro.values), não estaria sendo criada com os valores das duas colunas do DataFrame?

3 respostas

Não.

Você pode entender uma Series como um Dicionário ordenado de Chave : Valor.

Nesse caso, os valores seriam os .values. No entando, o Dataframe e a Series possuem o índice, que pode ser entendido como sendo a Chave.

Para exemplificar, poderíamos criar a seguinte series:

notas = pd.Series(  [5,4]  ,     index = ["Matemática", "Português"] )

No caso citado, temos a mesma idéia, mas ao invés de "Matemática" e "Português", teriamos os índices [6, 8] , que são as notas do Pedro.

Uma última ressalva é que é realmente incomum utilizar a notação de atributo ao acessar colunas do seu DataFrame - não que seja incorreto, apenas não é convencional. Dê preferência para utilizar a notação de indexação:

pd.Series( notas["Ana"].values, index = notas["Pedro"].values)

Se fosse colocado que seria possível criar uma Series com 'os valores' de duas colunas de uma DataFrame, estaria correto?

pd.Series( notas["Ana"].values, index = notas["Pedro"].values)

Sim.

Está correto de ambas as formas, tanto usando a indexação quanto o atributo. Só é mais usual utilizar a notação de indexação.