有没有一种简单的方法来识别用于划分 parquet 数据集的变量?
作为一个示例,下面我使用mtcars
数据集创建了一个玩具Parquet地板。
# Load library
library(arrow)
# Write data to parquet
mtcars |> write_dataset("~/boop", partitioning = "cyl")
确定分区变量的一种方法是查看构成 parquet 的文件,如下所示:
# Open dataset & see files that are part of parquet
open_dataset("~/boop")$files
# [1] "XXXXX/boop/cyl=4/part-0.parquet" "XXXXX/boop/cyl=6/part-0.parquet"
# [3] "XXXXX/boop/cyl=8/part-0.parquet"
在这里,我可以看到cyl
是分区变量,但是我需要解析它,如果有几个分区变量,可能会涉及到一点。
是否有一种简单的方法来确定分区变量?例如,是否有一个元数据变量来记录这些信息?
1条答案
按热度按时间jdgnovmf1#
在有人提出更好的解决方案之前,这似乎是可行的:
正如问题中所建议的,我查看了parquet中的文件,然后使用一些正则表达式查找夹在
/
和=
之间的文本,这些文本应该对应于分区。