Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Limpando Data Frame

Peguei a base de dados dos jogos da Quina para fazer alguns exercícios de Data Science mas ao tentar limpar o DF várias linhas do Index ficaram repetidas, tentei usar o drop.duplicate() mas as linhas continuam repetidas como no exemplo abaixo do concursoo 5002.

Além disso, existe outra maneira de fazer o .drop nas colunas sem ser por label? Tive que digitar 16 linhas de códigos para isso.

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

dataset = pd.read_html('D_quina/d_quina.htm')
dataset = pd.DataFrame(dataset[0])
dataset

dataset.drop('Data Sorteio', inplace = True, axis = 1)
dataset.drop('Arrecadacao_Total', inplace = True, axis = 1)
dataset.drop('Ganhadores_Quina', inplace = True, axis = 1)
dataset.drop('Cidade', inplace = True, axis = 1)
dataset.drop('UF', inplace = True, axis = 1)
dataset.drop('Rateio_Quina', inplace = True, axis = 1)
dataset.drop('Ganhadores_Quadra', inplace = True, axis = 1)
dataset.drop('Rateio_Quadra', inplace = True, axis = 1)
dataset.drop('Ganhadores_Terno', inplace = True, axis = 1)
dataset.drop('Rateio_Terno', inplace = True, axis = 1)
dataset.drop('Ganhadores_Duque', inplace = True, axis = 1)
dataset.drop('Rateio_Duque', inplace = True, axis = 1)
dataset.drop('Acumulado', inplace = True, axis = 1)
dataset.drop('Valor_Acumulado', inplace = True, axis = 1)
dataset.drop('Estimativa_Premio', inplace = True, axis = 1)
dataset.drop('Valor_Acumulado_Sorteio_Especial_São_João', inplace = True, axis = 1)
dataset.set_index('Concurso', inplace=True)
dataset


    1ª Dezena    2ª Dezena    3ª Dezena    4ª Dezena    5ª Dezena
Concurso                    
5002    53    27    79    17    78
5002    53    27    79    17    78
5002    53    27    79    17    78
5002    53    27    79    17    78
8656 rows × 5 columns
2 respostas
solução!

Olá Igor tudo bem com você??

Uma opção de dropar as colunas pode ser a seguinte:

dataset.drop(['Data Sorteio', 'Arrecadacao_Total', 'Ganhadores_Quina', 'Cidade', 'UF', 'Rateio_Quina', 'Ganhadores_Quadra', 'Rateio_Quadra', 'Ganhadores_Terno', 'Rateio_Terno', 'Ganhadores_Duque', 'Rateio_Duque', 'Acumulado', 'Valor_Acumulado', 'Estimativa_Premio', 'Valor_Acumulado_Sorteio_Especial_São_João'], axis=1)

Com relação aos dados duplicados, eu sugiro o seguinte:

dataset.shape
dataset_novo = dataset.drop_duplicates()
dataset_novo.shape

Assim você conseguirá saber os números de linhas duplicadas que foram retiradas do comando.

Espero ter te ajudado e qualquer dúvida é só retornar aqui!

Bons estudos

O Drop duplicates realmente agora funcionou, devia estar digitando algo errado, mas a exclusão de colunas não vai, provavelmente pelo número de colunas que estão sendo excluídas de vez, parece que só aceitam até 8 por comando.