PANDAS RESHAPE

PANDAS RESHAPE
“Existe dados em vários tamanhos e formas. Frequentemente exigimos remodelação dos dados ao lidar com eles para que sejam idealmente assimilados para a tarefa atual. Examinaremos 2 métodos simples para reformular um quadro de dados neste artigo.”

Podemos utilizar o “PD.pivot () ”função para remodelar o quadro de dados do formato longo existente para um longo. Um novo DataFrame pode ser produzido usando a função pivô de uma existente. O “PD.pivot () ”aceita três argumentos. Para empregar esse método, temos que usar a seguinte sintaxe:

O “PD.O método Melt () ”pode ser usado para converter o quadro de dados de amplo para o longo formato. Quando é necessário usar uma coluna específica como identificador, essa função pode ser empregada. A sintaxe para empregar este método é dada aqui:

A implementação prática dessas duas técnicas será aprendida neste tutorial com a ajuda de programas Python.

Exemplo 1: Utilizando o método pandas pivot () para remodelar o quadro de dados de longa

A primeira ilustração implementará o conceito de utilizar os pandas “PD.método pivot () ”para remodelar o quadro de dados de um formato longo para um amplo. Vamos ver como isso funciona.

A ferramenta “Spyder” é lançada para compilar o programa Python usando seu ambiente. O código começou importando a biblioteca de pandas. Além disso, fizemos "PD" o pseudônimo de "pandas".

Para construir um DataFrame, utilizaremos o método pandas “PD.Quadro de dados()". Este método cria um quadro de dados com valores fornecidos. O “PD.DataFrame () ”é chamado para construir um DataFrame com 3 colunas“ Grupo ”,“ Tarefa ”e“ Score ”. As colunas podem estar armazenando valores com diferentes tipos de dados, mas o comprimento dos valores permanecerá iguais para todas as colunas. A primeira coluna, "Grupo", contém tipos de strings de valores que são "x", "x", "x", "y", "y", "y", "z", "z" e "z" ”. A segunda coluna, "Tarefa", possui valores inteiros; “4”, “5”, “6”, “4”, “5”, “6”, “4”, “5” e “6”. Para a última coluna, “Score”, especificamos valores como “13”, “18”, “3”, “9”, “11”, “15”, “5”, “14” e “21”.

O “PD.O método de dataframe () ”gerará um DataFrame com esses valores fornecidos. Para armazenar o conteúdo desse quadro de dados, criamos um objeto de quadro de dados, "Competição". Este objeto manterá o quadro de dados a ser usado depois. Então, para visualizá -lo, o método de Python é empregado, que é "print ()". O método "print ()" levará o objeto DataFrame "Competição" como entrada e exibirá seu conteúdo na janela de saída.

Para executar o script, apenas precisamos pressionar a opção "Run File" e a saída será exibida. Aqui temos um DataFrame com 3 colunas que estão segurando 9 linhas. Podemos ver que a coluna "Grupo" tem três valores únicos, que são "X", "Y" e "Z". E a coluna "Tarefa" também contém três valores distintos "4", "5" e "6".

Portanto, para remodelar esse quadro de dados longo para um amplo, empregaremos a função fornecida por pandas “PD.pivô()". Invocamos o “PD.Método pivot () ”e passou 4 parâmetros que são“ df ”,“ índice ”,“ colunas ”e“ valores ”. O "DF" é o nome do DataFrame que fornecemos como "competição". O "Índice" receberá a coluna, que deve ser usada como coluna de índice. Aqui especificamos a coluna "Grupo" como o "índice". O atributo "colunas" obtém uma coluna cujos dados ele usará como rótulos da coluna. Fornecemos a coluna "Tarefa" para o atributo "colunas". Serão necessários os valores distintos da "tarefa" e os tornarão colunas. Os "valores" extrairão os valores da coluna fornecida, i.e., a coluna "pontuação" e colocá -los nas colunas criadas correspondentes ao índice para esses valores. O resultado será apresentado chamando a função "print ()".

Aqui podemos ver que os valores distintos da coluna "grupo" são definidos como uma coluna de índice, os valores exclusivos da coluna "Tarefa" são usados ​​como títulos de coluna e os valores são retirados da coluna "pontuação". O DataFrame é compreendido em um amplo formato, rompendo -o de um longo arranjo.

Exemplo 2: Utilizando o método Pandas Melt () para remodelar o quadro de dados de largo a longo

A técnica acima reformulou o quadro de dados de muito a largura; Veremos o seu oposto, que está transformando o quadro de dados de um amplo formato para um longo. Esta instância empregará os pandas “PD.MELT () ”função para remodelar nosso quadro de dados fornecido em um formato longo.

Para implementar esse método, inicialmente precisamos construir o quadro de dados. Como os pandas nos oferecem um método interno “PD.Dataframe () ”para gerar um DataFrame. Então, invocamos esta função e a iniciamos com 5 colunas. As colunas são "token" com string datatype, "carro", "caminhão", "barramento" e "motocicleta" com dados de dados inteiros. Os valores da coluna "Token" são "P01", "P02", "P03" e "P04". Para a coluna "Car", os valores são "18", "41", "39" e "24". A lista de valores "11", "33", "17" e "25" são armazenados na coluna "caminhão". O "ônibus" tem esses valores "42", "38", "10" e "21". A última coluna, "Motorbike", segura as entradas "16", "34", "21" e "45".

Para preservar o quadro de dados, geramos um objeto de quadro de dados, "transporte". Para colocar esse conteúdo em exibição, o método "print ()" é invocado com o objeto DataFrame como entrada.

Nosso quadro de dados com um amplo arranjo de valores é exibido no console python com 5 colunas e 4 linhas.

Nesta demonstração, vamos exercer o “PD.MELT () ”Método para alcançar o resultado esperado.

O “PD.a função derret () ”é chamada. Aqui, o atributo que possui é "df_name", que fornecemos como "transporte", e o "id_vars" leva a coluna, que será usada como o identificador em torno do qual derreteremos o quadro de dados. Selecionamos a coluna "Token" para "id_var". O "value_var" obtém colunas que deve não Se não especificarmos colunas, ele receberá todas as colunas, exceto o conjunto como um identificador. Então, as colunas que fornecemos para modificar um "carro", "caminhão", "ônibus" e "moto". Criamos uma variável "transporte" e atribuímos a saída gerada ao invocar o "PD.Função Melt () ”. Por fim, o resultado é apresentado para visualizar usando o método "print ()".

O quadro de dados transformado que recebemos foi exibido remodelando -o em um formato longo. O quadro de dados longo possui 3 colunas "token", "variável" e "valores". O "token" é usado como identificador para o restante dos valores da coluna. A variável armazena os rótulos da coluna em correspondência com o identificador. e o "valor" tem os valores para cada entrada.

Conclusão

Pode haver uma situação em que a forma do DataFrame pode não se adequar à sua tarefa. O DataFrame pode estar em um formato longo ou em um amplo formato. O amplo quadro de dados formatado pode ser remodelado em um longa, e o quadro de dados formatado pode ser modificado em um longo arranjo usando os métodos pandas. Para converter o quadro de dados em um amplo formato, utilizamos o “PD.função pivot () ”praticamente implementando -a na ferramenta Spyder. Da mesma forma, para remodelar o quadro de dados de formato largo para um longo, empregamos o “PD.MELT () ”função no 2nd exemplo. Ambos esses métodos são executados e muito úteis sempre que você encontrar a necessidade de remodelar seu quadro de dados.