You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@arrow.apache.org by "Matthew Rocklin (JIRA)" <ji...@apache.org> on 2017/03/02 23:09:45 UTC

[jira] [Commented] (ARROW-376) Python: Convert non-range Pandas indices (optionally) to Arrow

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

Matthew Rocklin commented on ARROW-376:
---------------------------------------

I would love to see this issue get higher priority.  I would like to experiment with using Arrow as Dask's network serialization format for pandas dataframes if it were implemented.  I think we would see good speed boosts on communication heavy workloads like shuffles.  This would be fun to write about afterwards.

> Python: Convert non-range Pandas indices (optionally) to Arrow
> --------------------------------------------------------------
>
>                 Key: ARROW-376
>                 URL: https://issues.apache.org/jira/browse/ARROW-376
>             Project: Apache Arrow
>          Issue Type: Improvement
>          Components: Python
>            Reporter: Uwe L. Korn
>            Assignee: Jim Ahn
>            Priority: Minor
>              Labels: newbie
>
> Currently the indices of a Pandas DataFrame are totally ignored on the Pandas to Arrow conversion. We should add an option to also convert the index to an Arrow column if they are not a simple range index.
> The condition for a simple index should be {{isinstance(df.index, pd.RangeIndex) && (df.index._start == 0) && (df.index._stop == len(df.index)) && (df.index._step == 1)}}. In this case, we can always skip the index conversion. Otherwise, a new column in the Arrow table shall be created using the index' name as the name of the column. Additionally there should be some metadata annotation of that column that it is derived of an Pandas Index, so that for roundtrips, we'll use it again as the index of a DataFrame.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)