PYTHON帮助

pyarrow(开发者如何使用)

发布 2024年八月13日
分享:

简介

PyArrow 是一个强大的库,提供了一个到Apache Arrow框架的Python接口。Apache Arrow是一个用于内存数据的跨语言开发平台。它指定了一种标准化的、与语言无关的列式内存格式,用于扁平和分层数据,组织起来以在现代硬件上进行高效的分析操作。PyArrow 基本上是实现为Python包的Apache Arrow Python绑定。 PyArrow 实现不同数据处理系统和编程语言之间的高效数据交换和互操作性。在本文的后面部分,我们还将学习有关 IronPDF,一个由...开发的PDF生成库 IronSoftware.

PyArrow的主要特性

  1. 列式内存格式:

PyArrow使用列式内存格式,这对于内存中的分析操作来说是非常高效的。这种格式允许更好地利用CPU缓存和矢量化操作,非常适合数据处理任务。PyArrow由于其列式特性,可以高效地读写Parquet文件结构。

  1. 互操作性: PyArrow的主要优势之一是能够在不同编程语言和系统之间促进数据交换,而无需进行序列化或反序列化。这在使用多种语言的环境中非常有用,如数据科学和机器学习。

  2. 与Pandas的集成: PyArrow可以作为Pandas的后端,允许高效的数据操作和存储。从Pandas 2.0开始,可以将数据存储在Arrow数组中而不是NumPy数组中,这在处理字符串数据时尤其能够带来性能提升。

  3. 支持各种数据类型: PyArrow支持多种数据类型,包括基本类型。 (整数,浮点数), 复杂类型 (结构体,列表)和嵌套类型。这使得它在处理不同类型的数据时非常灵活。

  4. 零拷贝读取: PyArrow 允许零拷贝读取,这意味着可以从 Arrow 内存格式中读取数据而无需复制。这减少了内存开销并提高了性能。

安装

安装 PyArrow, 你可以使用 pip康达:

pip install pyarrow

conda install pyarrow -c conda-forge
PYTHON

基本用法

我们正在使用 Visual Studio 代码 作为代码编辑器。首先创建一个新文件,pyarrowDemo.py。

以下是一个关于如何使用PyArrow创建表格并执行一些基本操作的简单示例:

import pyarrow as pa
import 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

代码说明

该Python代码使用PyArrow来创建一个表。 (`pa.Table`) 从三个数组 (`pa.array`)它接着打印表格,显示名为'col1'、'col2'和'col3'的列,每列包含相应的整数、字符串和浮点数数据。

输出端

pyarrow(开发人员如何使用):图1 - 控制台输出显示一个PyArrow表对象及其内容。

集成与Pandas

PyArrow 可以无缝集成与 大熊猫 提升性能,特别是在处理大数据集时。以下是将Pandas DataFrame转换为PyArrow Table的示例:

import pandas as pd
import 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

代码解释

这段Python代码将Pandas DataFrame转换为PyArrow表 (`pa.Table`) 然后打印表格。该数据框由三列组成 (`col1`, `col2`, `col3`) 使用整数、字符串和浮点数据。

输出端

pyarrow(开发人员如何使用):图2 - 控制台输出显示了一个通过将 pandas 数据框转换为 PyArrow 表格生成的 PyArrow 表格对象。

高级功能

1. 文件格式

PyArrow 支持读写各种文件格式,如 Parquet 和 Feather。这些格式经过性能优化,广泛应用于数据处理管道。

2. 内存映射

PyArrow 支持内存映射文件访问,这使得在不将整个数据集加载到内存中的情况下,高效地读写大数据集成为可能。

3. 进程间通信

PyArrow 提供了进程间通信的工具,能够在不同进程之间高效地共享数据。

IronPDF 简介

pyarrow(开发者工作原理):图 3 - IronPDF for Python:Python PDF 库

IronPDF 是一个用于Python的库,可以方便地处理PDF文件,使得以编程方式创建、编辑和操作PDF文档等任务得以实现。它提供了诸如 从 HTML 生成 PDF将文本、图像和形状添加到现有PDF文件中,以及 提取文本和图像 从PDF文件中。以下是一些关键功能

从HTML生成PDF

IronPDF可以轻松将HTML文件、HTML字符串和URL转换为PDF文档。利用Chrome PDF渲染器来 渲染网页 直接转换为PDF格式。

跨平台兼容性

IronPDF兼容Python 3+,可在Windows、Mac、Linux和云平台上无缝运行。它还支持 .NET, Java, PythonNode.js. 环境。

编辑和签名功能

通过设置属性、添加安全功能来增强PDF文档,例如 密码和权限应用数字签名.

自定义页面模板和设置

使用IronPDF,您可以通过可定制的 页眉、页脚, 页码, 可调节页边距。它支持响应式布局,并允许设置自定义纸张尺寸。

标准合规性

IronPDF 符合 PDF 标准,包括 PDF/A 和 PDF/UA。支持 UTF-8字符编码 并无缝处理如图像、CSS 样式和字体等资产。

使用IronPDF和PyArrow生成PDF文档

IronPDF 前提条件

  1. IronPDF 使用 .NET 6.0 作为其底层技术。因此,您拥有 .NET 6.0 运行时 已安装在您的系统上。

  2. Python 3.0+:您需要安装Python 3.0或更高版本。

  3. pip:安装Python包管理器 pip 安装 IronPDF 包。

安装必要的库:

pip install pyarrow 
pip install ironpdf

然后添加以下代码,以演示IronPDF和pyarrow Python软件包的用法

import pandas as pd
import pyarrow as pa
from ironpdf import * 
# 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)
renderer = ChromePdfRenderer()
# Create a PDF from a HTML string using Python
content = "<h1>Awesome Iron PDF with pyarrow</h1>"
content += "<p>table data</p>"
for row in table:
    # Access specific values in a row
    value_in_column1 = row[0]
    value_in_column2 = row[1]
    value_in_column3 = row[2]
    content += "<p>"+str(value_in_column1)+","+str(value_in_column2)+","+str(value_in_column3)+"</p>"    
pdf = renderer.RenderHtmlAsPdf(content)    
    # Export to a file or Stream
pdf.SaveAs("DemoPyarrow.pdf")
PYTHON

代码解释

脚本展示了如何整合Pandas、PyArrow和IronPDF库,从存储在Pandas DataFrame中的数据创建PDF文档:

  1. Pandas DataFrame创建:

    • 创建一个Pandas DataFrame (数据框) 三列 (col1, col2, col3) 包含数字和字符串数据。
  2. 转换为PyArrow表:

    • 转换Pandas DataFrame ("数据框") 转换为PyArrow表 (表) 使用 pa.Table.from_pandas() 方法。此转换有助于与基于Arrow的应用程序进行高效的数据处理和互操作性。
  3. 使用IronPDF生成PDF:
  • 使用IronPDF的ChromePdfRenderer并调用其RenderHtmlAsPdf方法生成PDF文档 (DemoPyarrow.pdf) 来自 HTML 字符串 (内容), 包括 PyArrow 表中提取的标题和数据 (表格).

输出端

pyarrow(开发者工作原理):图 4 - 通过将 pandas dataframe 转换为 PyArrow 表,控制台输出显示一个 PyArrow 表对象。

输出 PDF

pyarrow(它对开发者的工作原理):图5 - 使用IronPDF for Python库生成的输出PDF,显示了来自PyArrow表的逐行数据。

IronPDF 授权

IronPDF Python在使用IronPDF包之前,请将许可证密钥放置在脚本的开头:

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

结论

PyArrow 是一个多功能且强大的库,它增强了Python在数据处理任务方面的能力。其高效的内存格式、互操作性功能以及与Pandas的集成,使其成为数据科学家和工程师必备的工具。无论您是在处理大型数据集、执行复杂的数据操作,还是构建数据处理管道,PyArrow 都能提供所需的性能和灵活性,有效地处理这些任务。另一方面, IronPDF 是一个强大的Python库,可以简化从Python应用程序直接创建、操作和呈现PDF文档。它无缝集成现有的Python框架,允许开发人员动态生成和自定义PDF文档。再加上一同 PyArrowIronPDF Python 包,用户可以轻松处理数据结构并将数据归档。

IronPDF 还提供了全面的文档来帮助开发人员入门,并附有大量的代码示例,展示其强大的功能。有关更多详细信息,请访问 文献资料代码示例 页码

< 前一页
crc32c Python(开发者如何使用)
下一步 >
加密 Python(开发者如何使用)

准备开始了吗? 版本: 2024.9 刚刚发布

免费 pip 安装 查看许可证 >