You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从Parquet文件读取指定行列?含首行及指定列读取需求

读取Parquet文件的指定列与第一行

方法一:基于Pandas快速实现

你已经能通过pd.read_parquet指定列读取,只需在后面追加取行操作就能拿到第一行:

import pandas as pd

# 读取指定列并仅保留第一行(返回DataFrame格式)
df = pd.read_parquet(filename, columns=['first_col','third_col','fifth_col']).head(1)

# 或者用iloc精准定位第一行(同样返回DataFrame)
df = pd.read_parquet(filename, columns=['first_col','third_col','fifth_col']).iloc[[0]]

# 如果想要单一行的Series格式,用这个
row_series = pd.read_parquet(filename, columns=['first_col','third_col','fifth_col']).iloc[0]

这种方法简单直接,适合文件体积不大的场景。

方法二:用PyArrow高效读取(大文件首选)

如果你的Parquet文件体积较大,先读取全列数据再筛选第一行会浪费内存。可以用PyArrow直接读取目标行组的指定列,再提取第一行:

import pyarrow.parquet as pq

# 打开Parquet文件对象
parquet_file = pq.ParquetFile(filename)
# 读取第一个行组的指定列(Parquet按行组存储,第一个行组的首行就是文件第一行)
row_group_table = parquet_file.read_row_group(0, columns=['first_col','third_col','fifth_col'])
# 转成DataFrame并取第一行
df = row_group_table.to_pandas().head(1)

这种方式只加载必要的行组和列,内存占用更低,处理大文件时效率更高。

内容的提问来源于stack exchange,提问作者Susan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 04:35:54