You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jira@arrow.apache.org by "Joris Van den Bossche (Jira)" <ji...@apache.org> on 2021/05/17 11:48:00 UTC

[jira] [Commented] (ARROW-12751) [C++] Add variadic row-wise min/max kernels (least/greatest)

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

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

Numpy has this as {{np.minimum}} and {{np.maximum}}, although those are limited to a fixed number of 2 input arrays (so a binary min/max, not variadic)

> [C++] Add variadic row-wise min/max kernels (least/greatest)
> ------------------------------------------------------------
>
>                 Key: ARROW-12751
>                 URL: https://issues.apache.org/jira/browse/ARROW-12751
>             Project: Apache Arrow
>          Issue Type: Improvement
>          Components: C++
>            Reporter: Ian Cook
>            Priority: Major
>
> Add a pair of variadic functions equivalent to SQL's {{least}}/{{greatest}} or R's {{pmin}}/{{pmax}}. Should take 0, 1, 2, ... same-length numeric arrays as input and return an array giving the minimum/maximum of the values found in each position of the input arrays. For example, in the case of these 2 input arrays:
> {code:java}
> Array<double>        Array<double>
> [                    [
>   1,                   2,
>   4                    3
> ]                    ]
> {code}
> {{least}} would return:
> {code:java}
> Array<double>
> [ 
>   1,
>   3
> ] 
> {code}
> and {{greatest}} would return
> {code:java}
> Array<double>
> [ 
>   2,
>   4
> ] 
> {code}
> The returned array should have the same data type as the input arrays, or follow promotion rules if the numeric types of the input arrays differ.
> Should also accept scalar numeric inputs and recycle their values.



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