[
https://issues.apache.org/jira/browse/ARROW-12657?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17408488#comment-17408488
]
Eduardo Ponce commented on ARROW-12657:
---------------------------------------
After reviewing the PR, noticed that the string parsing is done along the
unsigned parsing, so not having prefix of '0x' would require to first traverse
the string and validate it as a hex string. Also, in addition to the implicit
hex parsing, we could consider adding a kernel *hex_to_str* that would
basically be a wrapper over this (but will need to check/add '0x'). This would
allow hex values stored without the prefix be parsed correctly.
> [C++][Python][Compute] String hex to numeric conversion and bit shifting
> ------------------------------------------------------------------------
>
> Key: ARROW-12657
> URL: https://issues.apache.org/jira/browse/ARROW-12657
> Project: Apache Arrow
> Issue Type: New Feature
> Components: C++, Python
> Reporter: Franz
> Assignee: William Malpica
> Priority: Major
> Labels: pull-request-available
> Time Spent: 1h 20m
> Remaining Estimate: 0h
>
> Hi Apache Arrow Community,
> thanks for the great work on this project - it is really a game changer. I've
> started to use it more frequently since more and more compute kernels became
> available.
> However, I have a current requirement which I can't fulfill, yet. More
> concretely, I have hex values as strings. I need to convert them to numeric
> type (int) and apply bit shifting.
> Currently, I can't find a way to do so. I tried type casts (string to int)
> like
> {code:java}
> import pyarrow as pa
> array = pa.array(["0x2001591", "0x2000848", "0x2000123"])
> array.cast(pa.uint32()){code}
> However this results in _ArrowInvalid: Failed to parse string: '0x2000123' as
> a scalar of type uint32._
> Moreover, I will need to apply bit shifting once converted. I'm not sure if
> there is anything comparable in the compute kernels, yet.
> Thanks for any help in advance.
>
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)