Vaex能否像读取CSV文件一样直接加载Excel文件
Vaex框架读取Excel文件的实现方案
Vaex没有提供和from_csv对等的原生Excel读取方法,目前官方版本不支持直接加载Excel文件,可通过以下两种方案实现需求:
- 中转转换方案(适配小体量Excel文件)
借助Pandas的Excel解析能力做中转,先将Excel读取为Pandas DataFrame,再通过Vaex内置的from_pandas方法转换为Vaex数据结构即可,示例代码如下:
该方案的局限是Pandas读取Excel会全量加载数据到内存,仅适合内存可承载的中小体量Excel文件。import pandas as pd import vaex # 可传入sheet_name、header等所有pandas.read_excel支持的参数 pandas_df = pd.read_excel("你的本地文件路径.xlsx") vaex_df = vaex.from_pandas(pandas_df) - 格式预转换方案(适配大体量数据场景)
如果待处理的Excel数据量较大,建议先将Excel内容一次性导出为CSV、Apache Arrow、HDF5等Vaex原生支持高效读取的格式,后续就可以直接调用vaex.from_csv、vaex.open等原生接口加载,省去每次读取都要中转转换的开销,大文件场景下读取性能提升明显。
补充说明:Vaex官方未做Excel原生适配的核心原因是Excel格式本身解析效率极低,和Vaex面向超大规模数据集的核外计算定位不匹配,目前没有计划在核心库中加入Excel直接读取的能力。
内容的提问来源于stack exchange,提问作者Vivek Menon M
相关产品推荐
相关产品推荐

