如果我有一个已分区的数据,并且我要使用pd.read_parquet
中的filters
参数进行过滤,我如何才能实现这一目标?例如:
import pandas as pd
data = {
"ID": [1, 2, 3],
"Value": ["A", "B", "C"]
}
df = pd.DataFrame(data)
parquet_folder = "example_partitioned"
df.to_parquet(parquet_folder, index=False, partition_cols=["Value"])
所以我已经在磁盘上分区了数据 struct .如果我构造这样的过滤条件,它就会起作用:
filter_conditions = [
("Value", "==", "A")
]
pd.read_parquet(parquet_folder, filters=filter_conditions)
但如果我想要多个条件(即A OR B),以下内容不起作用:
filter_conditions_two = [
("Value", "==", "A"),
("Value", "==", "B")
]
pd.read_parquet(parquet_folder, filters=filter_conditions_two)
相反,这会返回空数据帧.这可以通过过滤器吗?