I want to concatenate two pandas dataframes A and B und afterwards sort them by two columns 'geohash' and 'timestamp'
A
    geohash  timestamp
0   a2a      15
1   b3a      14
B
    geohash  timestamp
0   a2b      15
1   b3b      14
After
AB = pd.concat([A,B],ignore_index=True)
AB.sort_values(['geohash','timestamp'])
I expect
AB
    geohash  timestamp
0   a2a      15
1   a2b      15
2   b3a      14
3   b3b      14
But I get
AB
    geohash  timestamp
0   a2a      15
1   b3a      14
2   a2b      14
3   b3b      15
Why does'nt pandas sort the whole dataframe AB?
sort_values does not happen in place. So when you run:
AB.sort_values(['geohash','timestamp'])
It is not updating AB rather returning a copy
AB.sort_values(['geohash','timestamp'], inplace=True)
Will update AB
Alternatively you can assign the sorted dataframe to a new variable
AB_sorted = AB.sort_values(['geohash','timestamp'])
AB_sorted 
geohash timestamp
0   a2a 15
2   a2b 15
1   b3a 14
3   b3b 15
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With