Python CSV Skip Header Row

Python CSV Skip Header Row
Neste artigo, aprenderemos como podemos remover o cabeçalho dos dados do arquivo CSV enquanto lê o próprio CSV, porque às vezes não precisamos do cabeçalho dos dados do arquivo CSV. Então, vamos aprender esses quatro métodos, que são fornecidos abaixo:
  1. Usando o método Next ()
  2. Use o método dictreader ()
  3. Pandas Skiprows com base em um número de linha específico
  4. Pandas Skiprows com base em uma posição de índice

Vamos explicar cada um dos métodos acima em detalhes.

Método 1: Usando o método Next ()

Neste método, usaremos o método Next () e veremos como esse método descartará a linha do cabeçalho antes de imprimir todos os outros dados do CSV.

Arquivo CSV: O arquivo CSV abaixo (teste.CSV) usaremos para este blog.

Mês, 1958.1959.1960
Jan, 340.360.417
Fev, 318.342.391
Mar, 362.406.419
Abr, 348.396.461
Jan, 340.360.417
Fev, 318.342.391 Importar CSV
com open ("teste.CSV "," R ") como registro:
# Estamos criando um objeto do leitor de CSV
CSVReader_Object = CSV.leitor (registro)
# A linha irá pular a primeira linha do arquivo CSV (linha do cabeçalho)
Próximo (CSVReader_Object)
# Agora estamos imprimindo todas as linhas, exceto a primeira linha do CSV
para linha em csvreader_object:
Imprimir (linha)

Saída:

['Jan', '340', '360', '417']
['Fev', '318', '342', '391']
['Mar', '362', '406', '419']
['Abr', '348', '396', '461']
['Jan', '340', '360', '417']
['Fev', '318', '342', '391']

Linha 1: importamos o módulo CSV.

Linha 3 -7: Abrimos o teste.Arquivo CSV no modo de leitura ('r') como um registro e depois criamos um objeto do CSV.Método Reader (). O método próximo (), quando o chamamos, descarta automaticamente a primeira linha do objeto do leitor do CSV e o restante dos dados que podemos usar como precisamos.

Linhas 10-11: Agora, estamos iterando o objeto do leitor CSV e imprimindo cada linha. A saída acima mostra que agora não há linha de cabeçalho.

Método 2: Usando o método dictreader ()

Agora, vamos ver como podemos ler o CSV como um formato de dicionário. Mas depois de ler o arquivo CSV como formato direto, imprimiremos apenas o valor, não a chave, que resolverá nosso problema de imprimir todos os dados sem a linha do cabeçalho. Estamos usando o mesmo teste.arquivo CSV como usamos antes. Um exemplo deste método é dado abaixo:

importar CSV
com open ("teste.CSV "," R ") como registro:
# Estamos criando um objeto do leitor de CSV
CSVReader_Object = CSV.Dictreader (registro)
# A linha irá pular a primeira linha do arquivo CSV (linha do cabeçalho)
# porque funciona como um dicto e estamos imprimindo apenas valores não chaves
para linha em csvreader_object:
Imprimir (linha ["mês"], linha ["1958"], linha ["1959"], linha ["1960"]))

Saída:

Jan 340 360 417
Fev 318 342 391
Mar 362 406 419
Abr 348 396 461
Jan 340 360 417
Fev 318 342 391

Linha 1: importamos o módulo CSV.

Linha 3 -5: Abrimos o teste.Arquivo CSV no modo de leitura ('r') como um registro e depois criamos um objeto do CSV.Método dictreader ().

Linhas 8-9: Agora, estamos iterando o objeto CSV Dictreader e imprimindo cada linha. Mas essa linha descarta automaticamente a primeira linha do objeto CSV Reader, porque o dictreader converte cada linha em uma forma de dicta (chave e valor). Quando imprimimos apenas valor.

Método 3: Usando os atributos do Pandas Read_CSV Skiprows

Neste método, usaremos o atributo Pandas Read_CSV Skiprows. Nos Skiprows, mencionaremos o número da linha do cabeçalho, que é obviamente 1, por isso definimos o valor dos Skiprows como 1, como mostrado no programa abaixo. Dessa forma, podemos ignorar a linha do cabeçalho do CSV enquanto lê os dados.

importar pandas como PD
skipheaderdf = pd.read_csv ('teste.CSV ', Skiprows = 1)
Imprimir (SkipHeaderDF)

Saída:

Jan 340 360 417
0 de fevereiro 318 342 391
1 mar 362 406 419
2 de abril 348 396 461
3 de janeiro 340 360 417
4 de fevereiro 318 342 391

Linha 1: Nós importamos a biblioteca de pandas como um PD.

Linha 2: Lemos o arquivo CSV usando o módulo Pandas Read_CSV e, nisso, mencionamos os Skiprows = 1, o que significa pular a primeira linha enquanto lemos os dados do arquivo CSV.

Linha 4: Agora, imprimimos o resultado final do quadro de dados mostrado na saída acima sem a linha do cabeçalho.

Método 4: Usando pandas, remova o cabeçalho do CSV usando a posição do índice

Neste método, usaremos o atributo Pandas Read_CSV Skiprows. Nos Skiprows, mencionaremos o número da posição do índice do cabeçalho, que é obviamente 0, por isso definimos o valor dos Skiprows em colchetes ([0]), como mostrado no programa abaixo. Dessa forma, podemos ignorar a linha do cabeçalho do CSV enquanto lê os dados.

importar pandas como PD
skipheaderdf = pd.read_csv ('teste.CSV ', Skiprows = [0])
Imprimir (SkipHeaderDF)

Saída:

Jan 340 360 417
0 de fevereiro 318 342 391
1 mar 362 406 419
2 de abril 348 396 461
3 de janeiro 340 360 417
4 de fevereiro 318 342 391

Linha 1: Nós importamos a biblioteca de pandas como um PD.

Linha 2: Lemos o arquivo CSV usando o módulo Pandas Read_CSV e, nisso, mencionamos os Skiprows = [0], o que significa pular a primeira linha enquanto lemos os dados do arquivo CSV.

Linha 4: Agora, imprimimos o resultado final do quadro de dados mostrado na saída acima sem a linha do cabeçalho.

Conclusão:

Este artigo viu quatro métodos diferentes para pular a linha do cabeçalho enquanto lê o arquivo CSV. Todos os métodos no artigo acima são perfeitamente finos e são usados ​​pelo programador Python para pular o cabeçalho do arquivo CSV enquanto lê os dados do CSV. O método da biblioteca de pandas não apenas nos permite remover o cabeçalho dos dados do arquivo CSV, mas também pode ser usado para remover outras linhas se especificarmos seu número ou posição de índice para os Skiprows. Portanto, os Skiprows poderão remover todas as linhas cujos números serão atribuídos a eles. Portanto, o módulo Pandas para pular o cabeçalho é o melhor para usar, e também é muito conveniente para remover as outras linhas.

Os outros métodos que usam o dictreader e o leitor também estão disponíveis, mas estes são apenas para as linhas do cabeçalho; portanto, se quisermos remover outras linhas, temos que escrever algum outro código também.