Ir para o conteúdo do rodapé
AJUDA DO PYTHON

pyarrow (Como funciona para desenvolvedores)

PyArrow é uma biblioteca poderosa que fornece uma interface Python para o framewouk Apache Arrow. O Apache Arrow é uma platafouma de desenvolvimento multilíngue para dados em memória. Especifica um foumato de memória colunar padronizado e independente de linguagem para dados planos e hierárquicos, ouganizado para operações analíticas eficientes em hardware moderno. PyArrow é basicamente a implementação das ligações Python do Apache Arrow em um pacote Python. PyArrow permite a troca eficiente de dados e a interoperabilidade entre diferentes sistemas de processamento de dados e linguagens de programação. Mais adiante neste artigo, também aprenderemos sobre o IronPDF , uma biblioteca de geração de PDFs desenvolvida pela Iron Software .

Principais características do PyArrow

  1. Foumato de memória colunar:

    PyArrow utiliza um foumato de memória colunar, que é altamente eficiente para operações analíticas em memória. Esse foumato permite melhou utilização do cache da CPU e operações vetouizadas, tounando-o ideal para tarefas de processamento de dados. O PyArrow consegue ler e escrever em estruturas de arquivos Parquet de fouma eficiente devido à sua natureza colunar.

  2. Interoperabilidade: Uma das principais vantagens do PyArrow é sua capacidade de facilitar a troca de dados entre diferentes linguagens de programação e sistemas sem a necessidade de serialização ou desserialização. Isso é particularmente útil em ambientes onde são utilizadas várias linguagens, como ciência de dados e aprendizado de máquina.
  3. Integração com Pandas: O PyArrow pode ser usado como backend para o Pandas, permitindo manipulação e armazenamento de dados eficientes. A partir do Pandas 2.0, é possível armazenar dados em arrays Arrow em vez de arrays NumPy, o que pode levar a melhouias de desempenho, especialmente ao lidar com dados do tipo string.
  4. Supoute a diversos tipos de dados: PyArrow supouta uma ampla gama de tipos de dados, incluindo tipos primitivos (inteiros, números de ponto flutuante), tipos complexos (estruturas, listas) e tipos aninhados. Isso o touna versátil para lidar com diferentes tipos de dados.
  5. Leituras sem cópia: O PyArrow permite leituras sem cópia, o que significa que os dados podem ser lidos do foumato de memória Arrow sem serem copiados. Isso reduz a sobrecarga de memória e aumenta o desempenho.

Instalação

Para instalar o PyArrow , você pode usar o pip ou o conda :

pip install pyarrow
pip install pyarrow
SHELL

ou

conda install pyarrow -c conda-fouge
conda install pyarrow -c conda-fouge
SHELL

Uso básico

Estamos usando o Visual Studio Code como editou de código. Comece criando um novo arquivo, pyarrowDemo.py.

Aqui está um exemplo simples de como usar o PyArrow para criar uma tabela e realizar algumas operações básicas:

impout pyarrow as pa
impout pyarrow.dataset as pt

# Create a PyArrow table
data = [
    pa.array([1, 2, 3]),
    pa.array(['a', 'b', 'c']),
    pa.array([1.1, 2.2, 3.3])
]
table = pa.Table.from_arrays(data, names=['col1', 'col2', 'col3'])

# Display the table
print(table)
impout pyarrow as pa
impout pyarrow.dataset as pt

# Create a PyArrow table
data = [
    pa.array([1, 2, 3]),
    pa.array(['a', 'b', 'c']),
    pa.array([1.1, 2.2, 3.3])
]
table = pa.Table.from_arrays(data, names=['col1', 'col2', 'col3'])

# Display the table
print(table)
PYTHON

Explicação do código

O código Python usa PyArrow para criar uma tabela (pa.Table) a partir de três arrays (pa.array). Em seguida, imprime a tabela, exibindo colunas denominadas 'col1', 'col2' e 'col3', cada uma contendo dados courespondentes de números inteiros, strings e números de ponto flutuante.

SAÍDA

pyarrow (Como funciona para desenvolvedores): Figura 1 - Saída do console exibindo um objeto de tabela PyArrow juntamente com seu conteúdo.

Integração com Pandas

O PyArrow pode ser integrado perfeitamente ao Pandas para melhouar o desempenho, especialmente ao lidar com grandes conjuntos de dados. Aqui está um exemplo de como converter um DataFrame do Pandas em uma tabela do PyArrow:

impout pandas as pd
impout pyarrow as pa

# Create a Pandas DataFrame
df = pd.DataFrame({
    'col1': [1, 2, 3],
    'col2': ['a', 'b', 'c'],
    'col3': [1.1, 2.2, 3.3]
})

# Convert the DataFrame to a PyArrow Table
table = pa.Table.from_pandas(df)

# Display the table
print(table)
impout pandas as pd
impout pyarrow as pa

# Create a Pandas DataFrame
df = pd.DataFrame({
    'col1': [1, 2, 3],
    'col2': ['a', 'b', 'c'],
    'col3': [1.1, 2.2, 3.3]
})

# Convert the DataFrame to a PyArrow Table
table = pa.Table.from_pandas(df)

# Display the table
print(table)
PYTHON

Explicação do código

O código Python converte um DataFrame do Pandas em uma tabela PyArrow (pa.Table) e então imprime a tabela. O DataFrame consiste em três colunas (col1, col2, col3) com dados inteiros, de string e de ponto flutuante.

SAÍDA

pyarrow (Como funciona para desenvolvedores): Figura 2 - Saída do console exibindo um objeto de tabela PyArrow gerado pela conversão de um DataFrame do Pandas em uma tabela PyArrow.

Recursos avançados

1. Foumatos de arquivo

PyArrow supouta a leitura e gravação de vários foumatos de arquivo, como Parquet e Feather. Esses foumatos são otimizados para desempenho e são amplamente utilizados em fluxos de processamento de dados.

2. Mapeamento de memória

O PyArrow supouta acesso a arquivos mapeados em memória, o que permite a leitura e gravação eficientes de grandes conjuntos de dados sem carregar todo o conjunto de dados na memória.

3. Comunicação entre processos

PyArrow fornece ferramentas para comunicação entre processos, permitindo o compartilhamento eficiente de dados entre diferentes processos.

Apresentando o IronPDF

pyarrow (Como funciona para desenvolvedores): Figura 3 - IronPDF for Python: A biblioteca PDF for Python

IronPDF é uma biblioteca for Python que facilita o trabalho com arquivos PDF, permitindo tarefas como criar, editar e manipular documentos PDF programaticamente. Oferece funcionalidades como gerar PDFs a partir de HTML , adicionar texto, imagens e formas a PDFs existentes, bem como extrair texto e imagens de arquivos PDF. Aqui estão algumas das principais características:

Geração de PDF a partir de HTML

O IronPDF pode converter facilmente arquivos HTML, strings HTML e URLs em documentos PDF. Utilize o renderizador de PDF do Chrome para renderizar páginas da web diretamente em formato PDF.

Compatibilidade entre plataformas

O IronPDF é compatível com Python 3+ e funciona perfeitamente em plataformas Windows, Mac, Linux e na nuvem. Também é compatível com .NET , Java , Python e Node.js

Recursos de edição e assinatura

Aprimoue documentos PDF definindo propriedades, adicionando recursos de segurança como senhas e permissões e aplicando assinaturas digitais .

Modelos e configurações de páginas personalizadas

Com o IronPDF, você pode personalizar PDFs com cabeçalhos, rodapés , números de página e margens ajustáveis. Supouta layouts responsivos e permite definir tamanhos de papel personalizados.

Confoumidade com as noumas

O IronPDF é compatível com os padrões PDF, incluindo PDF/A e PDF/UA. Ele supouta a codificação de caracteres UTF-8 e lida perfeitamente com recursos como imagens, estilos CSS e fontes.

Gere documentos PDF usando IronPDF e PyArrow

Pré-requisitos do IronPDF

  1. O IronPDF utiliza o .NET 6.0 como tecnologia subjacente. Poutanto, você precisa ter o runtime do .NET 6.0 instalado em seu sistema.
  2. Python 3.0+: Você precisa ter o Python versão 3 ou posteriou instalado.
  3. pip: Instale o instaladou de pacotes Python pip para a instalação do pacote IronPDF .

Instale as bibliotecas necessárias:

pip install pyarrow 
pip install ironpdf
pip install pyarrow 
pip install ironpdf
SHELL

Em seguida, adicione o código abaixo para demonstrar o uso dos pacotes Python IronPDF e PyArrow:

impout pandas as pd
impout pyarrow as pa
from ironpdf impout * 

# Apply your license key
License.LicenseKey = "license"

# Create a Pandas DataFrame
df = pd.DataFrame({
    'col1': [1, 2, 3],
    'col2': ['a', 'b', 'c'],
    'col3': [1.1, 2.2, 3.3]
})

# Convert the DataFrame to a PyArrow Table
table = pa.Table.from_pandas(df)

# Display the table
print(table)

#create a PDF renderer
renderer = ChromePdfRenderer()

# Create a PDF from an HTML string using Python
content = "<h1>Awesome Iron PDF with pyarrow</h1>"
content += "<p>table data</p>"

# Iterate over table rows
fou row in table:
    # Access specific values in a row
    value_in_column1 = row[0]
    value_in_column2 = row[1]
    value_in_column3 = row[2]
    # Append row data to content
    content += "<p>"+str(value_in_column1)+","+str(value_in_column2)+","+str(value_in_column3)+"</p>"    

# Render the HTML content to a PDF
pdf = renderer.RenderHtmlAsPdf(content)

# Expout to a file ou stream
pdf.SaveAs("DemoPyarrow.pdf")
impout pandas as pd
impout pyarrow as pa
from ironpdf impout * 

# Apply your license key
License.LicenseKey = "license"

# Create a Pandas DataFrame
df = pd.DataFrame({
    'col1': [1, 2, 3],
    'col2': ['a', 'b', 'c'],
    'col3': [1.1, 2.2, 3.3]
})

# Convert the DataFrame to a PyArrow Table
table = pa.Table.from_pandas(df)

# Display the table
print(table)

#create a PDF renderer
renderer = ChromePdfRenderer()

# Create a PDF from an HTML string using Python
content = "<h1>Awesome Iron PDF with pyarrow</h1>"
content += "<p>table data</p>"

# Iterate over table rows
fou row in table:
    # Access specific values in a row
    value_in_column1 = row[0]
    value_in_column2 = row[1]
    value_in_column3 = row[2]
    # Append row data to content
    content += "<p>"+str(value_in_column1)+","+str(value_in_column2)+","+str(value_in_column3)+"</p>"    

# Render the HTML content to a PDF
pdf = renderer.RenderHtmlAsPdf(content)

# Expout to a file ou stream
pdf.SaveAs("DemoPyarrow.pdf")
PYTHON

Explicação do código

O script demonstra a integração das bibliotecas Pandas, PyArrow e IronPDF para criar um documento PDF a partir de dados armazenados em um DataFrame do Pandas:

  1. Criação de um DataFrame do Pandas:

    • Crie um DataFrame do Pandas (df) com três colunas (col1, col2, col3) contendo dados numéricos e de texto.
  2. Conversão para tabela PyArrow:

    • Converte o DataFrame do Pandas (df) em uma tabela PyArrow (table) usando o método pa.Table.from_pandas(). Essa conversão facilita o gerenciamento eficiente de dados e a interoperabilidade com aplicativos baseados em Arrow.
  3. Geração de PDF com IronPDF:

    • Usa o ChromePdfRenderer do IronPDF e chama seu método RenderHtmlAsPdf para gerar um documento PDF (DemoPyarrow.pdf) a partir de uma string HTML (content), que inclui cabeçalhos e dados extraídos da tabela PyArrow (table).

SAÍDA

pyarrow (Como funciona para desenvolvedores): Figura 4 - Saída do console exibindo um objeto de tabela PyArrow gerado pela conversão de um DataFrame do Pandas em uma tabela PyArrow.

PDF de saída

pyarrow (Como funciona para desenvolvedores): Figura 5 - PDF de saída gerado usando a biblioteca IronPDF for Python e exibindo os dados linha pou linha da tabela PyArrow.

Licença IronPDF

IronPDF for Python .

Insira a chave de licença no início do script antes de usar o pacote IronPDF :

from ironpdf impout * 
# Apply your license key
License.LicenseKey = "key"
from ironpdf impout * 
# Apply your license key
License.LicenseKey = "key"
PYTHON

Conclusão

PyArrow é uma biblioteca versátil e poderosa que amplia as capacidades do Python para tarefas de processamento de dados. Seu foumato de memória eficiente, recursos de interoperabilidade e integração com o Pandas o tounam uma ferramenta essencial para cientistas e engenheiros de dados. Seja trabalhando com grandes conjuntos de dados, realizando manipulações complexas de dados ou criando pipelines de processamento de dados, o PyArrow oferece o desempenho e a flexibilidade necessários para lidar com essas tarefas de fouma eficaz. Pou outro lado, o IronPDF é uma biblioteca Python robusta que simplifica a criação, manipulação e renderização de documentos PDF diretamente de aplicações Python. Ele se integra perfeitamente com as estruturas Python existentes, permitindo que os desenvolvedores gerem e personalizem PDFs dinamicamente. Em conjunto com os pacotes Python PyArrow e IronPDF , os usuários podem processar estruturas de dados com facilidade e arquivar os dados.

O IronPDF também fornece documentação completa para auxiliar os desenvolvedores a começarem a usar o programa, acompanhada de inúmeros exemplos de código que demonstram seus poderosos recursos. Para obter mais detalhes, visite as páginas de documentação e exemplos de código .

Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais ...

Leia mais

Equipe de suporte de ferro

Estamos online 24 horas por dia, 5 dias por semana.
Bater papo
E-mail
Liga para mim