diff --git a/python/cudf/cudf/core/frame.py b/python/cudf/cudf/core/frame.py index 7b561906afb..d60c206ac24 100644 --- a/python/cudf/cudf/core/frame.py +++ b/python/cudf/cudf/core/frame.py @@ -897,6 +897,13 @@ def from_arrow(cls, data: pa.Table) -> Self: # so handling indices and dictionary as two different columns. # This needs be removed once we have hooked libcudf dictionary32 # with categorical. + if any( + isinstance(x.type, pa.DictionaryType) + and isinstance(x, pa.ChunkedArray) + for x in data + ): + data = data.combine_chunks() + dict_indices = {} dict_dictionaries = {} dict_ordered = {}