我正在浏览PyArrow的教程和文档。我看到了一些冗余,例如,在读取拼花数据集(或文件夹)时,我可以
type1 = pyarrow.parquet.ParquetDataset("Pqfolder/", use_legacy_dataset=False)
# or
type2 = pyarrow.dataset.dataset('Pqfolder/', format='parquet')pyarrow.parquet和pyarrow.dataset是什么?它们是pyarrow包的模块吗?我在哪能找到医生?看起来pyarrow.dataset是在https://arrow.apache.org/docs/python/api/dataset.html中解释的,pyarrow.parquet是在https://arrow.apache.org/docs/python/parquet.html中解释的,所以我想知道为什么不是pyarrow.api.dataset.
据我所了解,API (pyarrow.dataset)还允许您使用scanner方法过滤数据,而使用pyarrow.parquet,我只能在使用filters读取文件/s时进行筛选,但之后只能使用read进行过滤。还有,过滤更丰富,因为表达.那么,如果pyarrow.parquet只能做pyarrow.dataset所做的一部分(使用不同的表示法),那么拥有它又有什么意义呢?
这里的问题是,我通过猜测、试验和错误来理解这一切。这是人们了解新库的标准方式,还是我错过了一些文档?我想我错过了一些软件设计的基本知识。我想知道是否有人能给我指点这方面的一些参考资料。
发布于 2022-08-29 19:31:33
我不知道pyarrow.api.dataset从何而来;docs路径只是描述API参考文档与高级用户文档的关系。所以你真的想要https://arrow.apache.org/docs/python/dataset.html。
Arrow项目正在改进文档。pyarrow.parquet比pyarrow.dataset要早很多,并且正在进行重新工作,以便在内部委托给pyarrow.dataset。(您可以将pyarrow.dataset看作是将pyarrow.parquet.ParquetDataset推广到非Parquet文件,并可能扩展到完全不是文件的东西。) pyarrow.parquet还具有“低级”函数,只需读取Parquet文件,就像用于CSV的pyarrow.csv一样。
https://stackoverflow.com/questions/73533590
复制相似问题