XLSX para CSV em Python

XLSX para CSV em Python
Nos últimos anos, Python aumentou como uma das linguagens de programação dominantes. A comunidade Python expandiu -se significativamente como resultado da popularidade e utilidade de Python. Entraremos em detalhes neste artigo sobre como usar o Python para converter XLSX em CSV. Estamos cientes de que os arquivos do Excel são frequentemente usados ​​para realizar análises financeiras, organizar os dados, entrada de dados, contabilidade, gerenciamento de dados, criar gráficos e gráficos, etc. No entanto, preferimos usar os arquivos CSV para importação e exportação de dados. É uma abordagem para transferir os dados estruturados usando um arquivo de texto sem formatação.

O que é um arquivo xslx?

Ao fazer planilhas nas versões mais recentes do Excel, a Microsoft usa um arquivo XLSX como o tipo de arquivo padrão. Semelhante ao tipo de arquivo DOCX do Word, podemos abrir os arquivos XLSX usando uma variedade de aplicativos/programas.

O que é um arquivo CSV?

O formato de arquivo CSV é o que podemos usar para armazenar os valores de dados tabulares em planilhas e bancos de dados. Os dados tabulares, texto ou texto, são armazenados como texto simples em um arquivo CSV. Um registro no arquivo CSV é o valor dos dados armazenado em cada linha do arquivo. Cada registro pode ter mais de um campo que é separado por vírgulas.

Principais diferenças entre os arquivos XLSX e CSV

Os usuários costumam usar CSV e XLSX de forma intercambiável, e geralmente não têm conhecimento das distinções entre eles, quais são suas características fundamentais e como funcionam. Serve apenas como fonte de informação para o usuário. Quase todos os negócios e corporativos usam ambos para ajudar os usuários a gerenciar, atualizar e armazenar os dados para o usuário. A seguir, são apresentadas algumas diferenças importantes entre os arquivos XLSX e CSV que você deve saber:

  • O formato CSV salva dados tabulares em um arquivo de texto delimitador com o .Extensão do CSV. Considerando que o arquivo Excel ou XLSX é uma planilha que armazena arquivos em seu formato proprietário, viz. XLS ou XLSX.
  • Os arquivos do Excel são arquivos binários que contêm os dados em todas as planilhas em uma pasta de trabalho. Considerando que o CSV é um formato de texto simples e simples com uma sequência de valores de dados separados por vírgulas.
  • As operações de dados não podem ser realizadas nos arquivos CSV. No entanto, eles podem ser realizados em arquivos do Excel.
  • Os arquivos CSV são mais rápidos e usam menos memória do que os arquivos XLSX. No entanto, o Excel usa mais memória ao importar os dados.
  • Se compararmos o CSV com o Excel, podemos abrir os arquivos CSV em qualquer editor de texto do Windows, enquanto os arquivos do Excel não podem.

Como um arquivo XLSX pode ser convertido para CSV usando o Python?

Um arquivo XLSX pode ser transformado em um arquivo CSV em Python usando uma variedade de métodos. O Python inclui uma variedade de módulos e funções que podem nos ajudar a realizar esta tarefa. Aqui, passaremos por alguns métodos que podem ser usados ​​para converter os arquivos XLSX em arquivos CSV no Python.

Pré -requisitos para realizar o Excel na conversão de CSV

Instalar os requisitos é o primeiro passo. Usamos os módulos como Combine Pandas, CSV e OpenPyxl, etc. Neste tutorial. O pacote de pandas do Python permite a manipulação e análise de dados. Pandas é uma biblioteca bem conhecida entre os programadores Python. Os arquivos do Excel podem ser lidos e escritos usando o pacote Python conhecido como OpenPyxl. Não vamos lidar diretamente com esta biblioteca. Em vez disso, os pandas usam o OpenPyxl internamente.

Usando o repositório PYPI, podemos instalar os dois pacotes:

Método 1: Convertendo XLSX em CSV usando o módulo Pandas

Exemplo 1: Converter um arquivo XLSX em CSV

Pandas é um módulo de código aberto criado para a linguagem de programação Python para manipular e analisar os dados. Para trabalhar com séries temporais e tabelas numéricas, os pandas fornecem uma variedade de funcionalidades e recursos. Usando pandas, pequenos e enormes conjuntos de dados podem ser lidos, filtrados e reorganizados. E os resultados podem ser produzidos em vários formatos, como Excel, JSON e CSV. Usamos o método read_excel () dos pandas para ler um arquivo do Excel e o método to_csv () para transformar o quadro de dados em um arquivo CSV.

Nós imprimimos nosso .arquivo CSV como um quadro de dados, como pode ser visto na saída. O script anterior converte nosso arquivo XLSX em CSV e cria um “salário.Arquivo CSV ”no diretório atual.

Exemplo 2: Convertendo o arquivo XLSX (com várias folhas) em CSV

No exemplo a seguir, primeiro lemos os nomes das folhas do arquivo do Excel. Os nomes de folhas individuais são então enrolados e salvos como arquivos CSV distintos. O script salva CSVs no mesmo local.

Usamos um arquivo XLSX de amostra com duas ou mais planilhas ou planilhas.

Como pode ser visto, nosso arquivo XLSX consiste em duas folhas (folha1 e folha2). Agora, escrevemos um código para converter este arquivo XLSX em CSV.

Saída:

O script converteu com sucesso o arquivo XLSX com duas folhas em um único arquivo CSV com uma única folha.

Exemplo 3: Converter vários arquivos XLSX em arquivos CSV separados

Considere um cenário em que você precisa converter vários arquivos do Excel em seu diretório de trabalho em CSV. Você poderia empregar este método. Começamos assumindo que cada arquivo contém apenas uma folha. Em seguida, estendemos nosso método para lidar com vários arquivos e várias folhas. O código python a seguir faz uso do módulo padrão global. Combinamos os caminhos de arquivo usando padrões com glob. Combina todos os arquivos com o .Extensão XLSX no diretório de trabalho. Depois disso, desenvolvemos uma função que lê os arquivos do Excel e os salva como arquivos CSV. Chamamos essa função em cada caminho de arquivo encontrado.

Este script anterior converte todos os arquivos XLSX no diretório atual em arquivos CSV.

Agora, convertemos os arquivos XLSX com várias planilhas em CSV. Esta é provavelmente a parte difícil. Três arquivos do Excel estão em nosso diretório de trabalho. Além disso, alguns deles consistem em mais de uma folha. Visamos:

  1. Crie um diretório para cada arquivo de planilha,
  2. Converta as folhas de arquivo do Excel em CSV e elas devem ser mantidas no diretório recém -criado.

O script converte o XLSX com folhas únicas e múltiplas em arquivos CSV separados e armazenam -os em novos diretórios com o mesmo nome.

Para recuperar todos os arquivos do Excel localizados no diretório atual, a função glob é usada. Depois disso, as pastas são criadas para cada arquivo XLSX usando o sistema operacional.função mkdir. Um arquivo CSV é então criado para cada folha dentro do novo diretório, loop sobre o nome da folha.

Método 2: Convertendo XLSX em CSV usando módulos OpenPyxl e CSV

Neste método, usaremos os módulos OpenPyxl e CSV para converter os arquivos XLSX em CSV. Para ler e escrever arquivos XLSX, XLSM, XLTX e XLTM, o módulo Python OpenPyxl pode ser usado. O módulo CSV inclui classes que permitem a leitura e a escrita de dados tabulares formatados pelo CSV.

Para ler ou carregar nosso arquivo XLSX, usamos a função load_workbook () do módulo OpenPyxl. Você pode usar esta função se precisar escrever ou ler um arquivo XLSX/Excel existente no Python. Após a ativação do Excel, usamos o CSV.Writer () Funcionar para criar nosso arquivo CSV. Em seguida, o loop for usado para armazenar os dados nas células de dados do arquivo CSV. Nós convertimos nosso exemplo.arquivo xlsx no myfile.CSV como visto na imagem a seguir:

Conclusão

Neste tutorial, demos a você uma breve introdução aos arquivos XLSX e arquivos CSV. Explicamos as principais diferenças entre os dois formatos de arquivo. Discutimos dois métodos com vários exemplos para ensinar como os arquivos XLSX com folhas únicas ou múltiplas podem ser convertidas em arquivos CSV. Implementamos um exemplo para converter vários arquivos XLSX em arquivos CSV simultaneamente. Pode ser simples ou difícil converter os dados do Excel para o CSV. Se você tem apenas um arquivo com um pequeno número de folhas, é simples. Mas se não, pode ser difícil.