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/02/05 16:26:00 UTC

[jira] [Resolved] (ARROW-11412) [Python] Expression evaluation problem for logical boolean expressions (and, or, not)

     [ https://issues.apache.org/jira/browse/ARROW-11412?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Joris Van den Bossche resolved ARROW-11412.
-------------------------------------------
    Fix Version/s: 4.0.0
       Resolution: Fixed

Issue resolved by pull request 9351
[https://github.com/apache/arrow/pull/9351]

> [Python] Expression evaluation problem for logical boolean expressions (and, or, not)
> -------------------------------------------------------------------------------------
>
>                 Key: ARROW-11412
>                 URL: https://issues.apache.org/jira/browse/ARROW-11412
>             Project: Apache Arrow
>          Issue Type: Bug
>          Components: Python
>    Affects Versions: 2.0.0, 3.0.0
>            Reporter: Roman Karlstetter
>            Priority: Major
>              Labels: pull-request-available
>             Fix For: 4.0.0
>
>          Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> There's a problem with boolean "and", "or" and "not" expressions when creating them in python (or I'm doing something completely stupid).
>  
> {code:java}
> >>> import pyarrow
> >>> pyarrow.__version__
> '3.0.0'
> >>> import pyarrow.dataset as ds
> >>> ds. scalar(False) and ds.scalar(True) # <--- I expect false
> <pyarrow.dataset.Expression true>
> >>> ds.scalar(True) and ds.scalar(False) # this works
> <pyarrow.dataset.Expression false>
> >>> ds.scalar(True) or ds.scalar(False) # this works
> <pyarrow.dataset.Expression true>
> >>> ds.scalar(False) or ds.scalar(True) # <--- I expect true
> <pyarrow.dataset.Expression false>
> >>> not ds.scalar(True)   # this works                                                                                                                                                                                                  
> False                                                                                                                                                                                                                       
> >>> not ds.scalar(False)      <--- I expect true                                                                                                                                                                                              
> False  
> {code}
> I tried to figure out what goes wrong here, but there are no obvious problems in the python code, same for C++ (but I didn't quite understand everything of it yet).
>  
> This happens with pyarrow3 and pyarrow2
>  
>  



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