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/12/09 15:23:00 UTC

[jira] [Commented] (ARROW-12060) [Python] Enable calling compute functions on Expressions

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

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

I would like to get back to this. 

> I think it would confuse me if "pc.log10(arr)" returned an array and "pc.log10(ds.field('a'))" returned an expression.

A kernel like {{pc.log10}} already returns different things depending on the input (an array as input gives an array as result, a scalar as input gives a scalar as result, ..). So that it would return an expression for an expression as input is also not necessarily that strange IMO.

Now, this also gives some "smelly" interdependence between the compute and dataset module (eg, if you want to pass FunctionOptions to the {{Expression.\_call}}, the dataset cython module needs to depend on the cython _compute module)


> [Python] Enable calling compute functions on Expressions
> --------------------------------------------------------
>
>                 Key: ARROW-12060
>                 URL: https://issues.apache.org/jira/browse/ARROW-12060
>             Project: Apache Arrow
>          Issue Type: Sub-task
>          Components: Python
>            Reporter: Joris Van den Bossche
>            Assignee: Joris Van den Bossche
>            Priority: Major
>             Fix For: 7.0.0
>
>
> To expose the full power of dataset (projection/filter) expressions, we should ensure that all compute kernels can be used in combination with expressions.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)