Digamos que eu tenha:
import pyarrow as pa
arr = pa.array([1, 3, 2, 2, 1, 3])
Gostaria de substituir os valores de acordo com {1: 'one', 2: 'two', 3: 'three'}
e terminar com:
<pyarrow.lib.LargeStringArray object at 0x7f8dd0b3c820>
[
"one",
"three",
"two",
"two",
"one",
"three"
]
Posso fazer isso através do Polars:
In [19]: pl.from_arrow(arr).replace_strict({1: 'one', 2: 'two', 3: 'three'}, return_dtype=pl.String).to_arrow()
Out[19]:
<pyarrow.lib.LargeStringArray object at 0x7f8dd0b3c820>
[
"one",
"three",
"two",
"two",
"one",
"three"
]
Existe uma maneira de fazer isso apenas com o PyArrow?
usar funções no módulo de computação pyarryow pode fazer o que você procura
exemplo trivial abaixo
espero que isso seja útil, confira https://arrow.apache.org/docs/python/compute.html para mais detalhes