python - Dataframe PANDAS -


i want merge duplicate rows in particular column , rearranging data. instance, have following dataframe:

    cont    id1    id2    id3    id4    id5    id6    id7  63309    89     101.3  na     na     na     na     na     na  63309    89     na     102.3  na     na     na     na     na  63309    89     na     na     na     104    na     na     na  63309    90     na     na     103    105.0  na     na     na  63309    89     na     na     na     na     na     107.1  na  63310    92     na     105.1  105.3  789.1  104    na     na  63310    92     109    na     na     na     na     na     na  63311    94     104    109    890    na     na     na     107  63309    89     na     na     na     na     109    na     111 

i want result in following format:

    cont    id1    id2    id3    id4    id5    id6    id7  63309    89     101.3  na     na     na     na     na     na           89     na     102.3  na     na     na     na     na           89     na     na     na     104    na     na     na           90     na     na     103    105.0  na     na     na           89     na     na     na     na     na     107.1  na           89     na     na     na     na     109    na     111   63310    92     na     105.1  105.3  789.1  104    na     na           92     109    na     na     na     na     na     na   63311    94     104    109    890    na     na     na     107 

i know can use df.sort() arrange in ascending order. i'm looking particular formatting of 'from' column , adding empty space once there transition 1 unique 'from' row next unique 'from' row.

>>> df.set_index(['from', 'cont']).sort_index()                id1    id2    id3    id4  id5    id6  id7  cont                                              63309 89    101.3    nan    nan    nan  nan    nan  nan       89      nan  102.3    nan    nan  nan    nan  nan       89      nan    nan    nan  104.0  nan    nan  nan       89      nan    nan    nan    nan  nan  107.1  nan       89      nan    nan    nan    nan  109    nan  111       90      nan    nan  103.0  105.0  nan    nan  nan 63310 92      nan  105.1  105.3  789.1  104    nan  nan       92    109.0    nan    nan    nan  nan    nan  nan 63311 94    104.0  109.0  890.0    nan  nan    nan  107 

you don't want spacer rows in dataframe. formatting issue.


Comments

Popular posts from this blog

Django REST Framework perform_create: You cannot call `.save()` after accessing `serializer.data` -

Why does Go error when trying to marshal this JSON? -