[ 
https://issues.apache.org/jira/browse/ARROW-10640?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17237243#comment-17237243
 ] 

Joris Van den Bossche commented on ARROW-10640:
-----------------------------------------------

And in SQL, this is related to a "CASE WHEN" clause: 
https://www.postgresqltutorial.com/postgresql-case/ (although here you can 
provide multiple boolean conditions, and it's also using expressions instead of 
actual boolean masks, but that's something to optimize only when there is a 
query engine)

> [C++] A "where" kernel to combine two arrays based on a mask
> ------------------------------------------------------------
>
>                 Key: ARROW-10640
>                 URL: https://issues.apache.org/jira/browse/ARROW-10640
>             Project: Apache Arrow
>          Issue Type: New Feature
>          Components: C++
>            Reporter: Joris Van den Bossche
>            Priority: Major
>
> (from discussion in ARROW-9489 with [~maartenbreddels])
> A general "where" kernel like {{np.where}} 
> (https://numpy.org/doc/stable/reference/generated/numpy.where.html) seems a 
> generally useful kernel to have, and could also help mimicking some other 
> python (setitem-like) operations. 
> The concrete use case in ARROW-9489 is to basically do a 
> {{fill_null(array[string], array[string])}} which could be expressed as 
> {{where(is_null(arr), arr2, arr)}}. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to