You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@arrow.apache.org by "Joris Van den Bossche (JIRA)" <ji...@apache.org> on 2019/08/08 15:12:00 UTC

[jira] [Created] (ARROW-6176) [Python] Allow to subclass ExtensionArray to attach to custom extension type

Joris Van den Bossche created ARROW-6176:
--------------------------------------------

             Summary: [Python] Allow to subclass ExtensionArray to attach to custom extension type
                 Key: ARROW-6176
                 URL: https://issues.apache.org/jira/browse/ARROW-6176
             Project: Apache Arrow
          Issue Type: Improvement
          Components: Python
            Reporter: Joris Van den Bossche


Currently, you can define a custom extension type in Python with 

{code}
class UuidType(pa.ExtensionType):

    def __init__(self):
        pa.ExtensionType.__init__(self, pa.binary(16))

    def __reduce__(self):
        return UuidType, ()
{code}

but the array you can create with this is always ExtensionArray. We should provide a way to define a subclass (eg `UuidArray` in this case) that can hold custom logic.

For example, a user might want to define `UuidArray` such that `arr[i]` returns an instance of Python's `uuid.UUID`

From https://github.com/apache/arrow/pull/4532#pullrequestreview-249396691



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)