如何用 conda 或 pip 安装 PyArrow 并完成第一次建表和保存 Parquet
如何用 conda 或 pip 安装 PyArrow 并完成第一次建表和保存 Parquet【免费下载链接】arrowApache Arrow is the universal columnar format and multi-language toolbox for fast data interchange and in-memory analytics项目地址: https://gitcode.com/GitHub_Trending/arrow3/arrow如果你的目标是在自己的 Python 环境里装好 PyArrow然后完成一次最小闭环创建一张列式表、把它写成 Parquet 文件、再读回来确认数据完整这篇文章按 Installing PyArrow 和 Getting Started 给出的真实步骤走一遍这条路径并说明每一步如何判断是否成功。适用前提来自官方安装文档PyArrow 在 Windows、macOS 和多种 Linux 发行版上定期构建和测试官方强烈建议使用 64 位系统当前版本兼容 Python 3.11、3.12、3.13 和 3.14。确认环境满足要求开始安装前先核对两点系统是 64 位的 Windows、macOS 或 Linux 发行版Python 版本在 3.11–3.14 之间。不满足这两条时文档没有给出兼容保证应先把环境调整到上述范围内再继续。用 conda 安装推荐路径官方给出的 conda 安装命令是从 conda-forge 渠道安装conda install -c conda-forge pyarrowconda-forge 上 PyArrow 实际上发布为三个包pyarrow-core最小核心、pyarrow在核心之外增加了 Acero、dataset 和 Parquet 支持、pyarrow-all再增加 Flight、Flight SQL 和 Gandiva。这里有一个直接影响本任务的选择点pyarrow-core不包含 Parquet只有 Arrow/Feather、JSON、CSV、ORC 等格式。因此要完成“保存 Parquet”用默认命令安装pyarrow即可如果你出于其他原因只想装最小包文档给出的组合是同时安装pyarrow-core和libparquetconda install -c conda-forge pyarrow-core libparquet对“建表 存 Parquet”这个任务来说第一条单包命令是最短路径。用 pip 安装Windows、Linux 和 macOS 上都可用 PyPI 上的最新包pip install pyarrow两个文档明确给出的注意事项Linux 上需要 pip 19.0 才能检测到预编译二进制包如果在 Windows 上用 pip 安装的 wheel 遇到 import 问题可能需要安装 Visual Studio 对应的最新 Visual C Redistributable。pip 只有一个pyarrow包它自带 Parquet 支持不需要像 conda 那样区分包变体。验证 Parquet 支持可用安装完成后Parquet 文档 给出的判断方式是通过 pip 或 conda 安装的pyarrow应当已经内置 Parquet 支持直接 import 即可验证import pyarrow.parquet as pq如果这一行没有抛出 ImportError说明当前安装已经具备读写 Parquet 的能力可以继续下一步。文档同时说明只有从源码构建时才需要用-DARROW_PARQUETON之类参数显式启用 Parquetpip/conda 安装路径不涉及。创建第一张表Getting Started 中的示例用三个数组组成一张表。Arrow 的数组是同一类型数据的集合多个数组绑定列名后就构成表import pyarrow as pa days pa.array([1, 12, 17, 23, 28], typepa.int8()) months pa.array([1, 3, 5, 7, 1], typepa.int8()) years pa.array([1990, 2000, 1995, 2000, 1995], typepa.int16()) birthdays_table pa.table([days, months, years], names[days, months, years]) print(birthdays_table)文档示例输出注意这是文档示例实际打印可能因版本略有差异pyarrow.Table days: int8 months: int8 years: int16 ---- days: [[1,12,17,23,28]] months: [[1,3,5,7,1]] years: [[1990,2000,1995,2000,1995]]看到三列、各 5 行的类型标注与数据即说明建表成功。保存为 Parquet 并读回验证建表之后保存就是一个函数调用。文件会写到 Python 进程当前工作目录import pyarrow.parquet as pq pq.write_table(birthdays_table, birthdays.parquet)写盘没有任何返回值输出判断成功的方式是读回来核对reloaded_birthdays pq.read_table(birthdays.parquet) print(reloaded_birthdays)文档示例的读回结果同样是文档示例输出pyarrow.Table days: int8 months: int8 years: int16 ---- days: [[1,12,17,23,28]] months: [[1,3,5,7,1]] years: [[1990,2000,1995,2000,1995]]读回的表的列名、类型和数值与写入前一致即完成“建表 — 存 Parquet — 读回”的完整验证。已知限制与下一步安装方式的影响若用了 conda 的pyarrow-core单包而没带libparquetimport pyarrow.parquet会失败这就是前面验证步骤存在的意义。Windows 上如果 PyArrow 是用 Clang/libc 构建的需要用户提供 IANA 时区数据库默认检测路径为%USERPROFILE%\Downloads\tzdata非默认位置需用pa.set_timezone_db_path(custom_path)设置该函数已标记 deprecated。主流预编译包使用 MSVC 或 MinGW GCC 13 构建无此额外配置。完成本任务后文档建议的延伸方向是阅读 Parquet 读写文档docs/source/python/parquet/index.rst涵盖单文件读写、数据类型处理、分区数据集以及 PyArrow 完整文档入口docs/source/python/index按需深入即可。【免费下载链接】arrowApache Arrow is the universal columnar format and multi-language toolbox for fast data interchange and in-memory analytics项目地址: https://gitcode.com/GitHub_Trending/arrow3/arrow创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考