[ https://issues.apache.org/jira/browse/ARROW-5295?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17662317#comment-17662317 ]
Rok Mihevc commented on ARROW-5295: ----------------------------------- This issue has been migrated to [issue #21761|https://github.com/apache/arrow/issues/21761] on GitHub. Please see the [migration documentation|https://github.com/apache/arrow/issues/14542] for further details. > [Python] accept pyarrow values / scalars in constructor functions ? > ------------------------------------------------------------------- > > Key: ARROW-5295 > URL: https://issues.apache.org/jira/browse/ARROW-5295 > Project: Apache Arrow > Issue Type: Improvement > Components: Python > Reporter: Joris Van den Bossche > Priority: Major > Labels: python-conversion > > Currently, functions like \{{pyarrow.array}} don't accept pyarrow Arrays, or > also not scalars of it: > {code} > In [42]: arr = pa.array([1, 2, 3]) > In [43]: pa.array(arr) > ... > ArrowInvalid: Could not convert 1 with type pyarrow.lib.Int64Value: did not > recognize Python value type when inferring an Arrow data type > In [44]: pa.array(list(arr)) > ... > ArrowInvalid: Could not convert 1 with type pyarrow.lib.Int64Value: did not > recognize Python value type when inferring an Arrow data type > {code} > Do we want to allow those / recognize those here? (the first case could even > have a fastpath, as we don't need to do it element by element). > Also scalars are not supported: > {code} > In [46]: type(arr.sum()) > Out[46]: pyarrow.lib.Int64Scalar > In [47]: pa.array([arr.sum()]) > ... > ArrowInvalid: Could not convert 6 with type pyarrow.lib.Int64Scalar: did not > recognize Python value type when inferring an Arrow data type > {code} > And also in other functions we don't accept arrow scalars / values: > {code} > In [48]: string = pa.array(['a'])[0] > In [49]: type(string) > Out[49]: pyarrow.lib.StringValue > In [50]: pa.field(string, pa.int64()) > ... > TypeError: expected bytes, pyarrow.lib.StringValue found > {code} > > -- This message was sent by Atlassian Jira (v8.20.10#820010)