You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@arrow.apache.org by "Bruno LE HYARIC (Jira)" <ji...@apache.org> on 2021/01/06 08:12:00 UTC
[jira] [Assigned] (ARROW-11044) [C++] Add "replace" kernel
[ https://issues.apache.org/jira/browse/ARROW-11044?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Bruno LE HYARIC reassigned ARROW-11044:
---------------------------------------
Assignee: Bruno LE HYARIC
> [C++] Add "replace" kernel
> --------------------------
>
> Key: ARROW-11044
> URL: https://issues.apache.org/jira/browse/ARROW-11044
> Project: Apache Arrow
> Issue Type: New Feature
> Components: C++
> Reporter: Bruno LE HYARIC
> Assignee: Bruno LE HYARIC
> Priority: Major
> Labels: pull-request-available
> Time Spent: 2h 40m
> Remaining Estimate: 0h
>
> Purpose a "replace" compute kernel which could fulfil -ARROW-10641 - [C++] A "replace" or "map" kernel to replace values in array based on mapping (@jorisvandenbossche)- [ARROW-9430](https://issues.apache.org/jira/browse/ARROW-9430) - [C++/Python] Kernel for SetItem(BooleanArray, values) (@xhochy). The implementation started on the basis of "fill_null" kernel. But it takes an additional BooleanArray parameter which is used as a mask to trigger value replacement.
> With following "null handling" logic:
> {noformat}
> Values Mask Replacement Output
> 1 v 1 false 1 r 1 v
> 1 v 1 true 1 r 1 r
> 1 v 0 null 1 r 1 v
> 1 v 1 false 0 null 1 v
> 1 v 1 true 0 null 1 v
> 1 v 0 null 0 null 1 v
> 0 null 1 false 1 r 0 null
> 0 null 1 true 1 r 1 r
> 0 null 0 null 1 r 0 null
> 0 null 1 false 0 null 0 null
> 0 null 1 true 0 null 0 null
> 0 null 0 null 0 null 0 null
> {noformat}
> (each column indicates the validity bit and the corresponding value. "v" for current value, "r" for replacement value).
--
This message was sent by Atlassian Jira
(v8.3.4#803005)