Pandas
keyboard_arrow_down 655 guides
chevron_leftData Manipulation Cookbook
Adding a prefix to column valuesAdding leading zeros to strings of a columnAdding new column using listsAdding padding to a column of stringsBit-wise ORChanging column type to stringConditionally updating values of a DataFrameConverting all object-typed columns to categorical typeConverting column type to dateConverting column type to floatConverting column type to integerConverting K and M to numerical formConverting string categories or labels to numeric valuesEncoding categorical variablesExpanding lists vertically in a DataFrameExpanding strings vertically in a DataFrameExtracting numbers from columnFilling missing value in Index of DataFrameFiltering column values using boolean masksLogical AND operationMaking DataFrame string column lowercaseMapping True and False to 1 and 0 respectivelyMapping values of a DataFrame using a dictionaryModifying a single value in a DataFrameRemoving characters from columnsRemoving comma from column valuesRemoving first n characters from column valuesRemoving last n characters from column valuesRemoving leading substringRemoving trailing substringReplacing infinities with another value in DataFrameReplacing values in a DataFrameRounding valuesSorting categorical columnsUsing previous row to create new columns
check_circle
Mark as learned thumb_up
4
thumb_down
0
chat_bubble_outline
0
Comment auto_stories Bi-column layout
settings
Sorting categorical columns in Pandas DataFrame
schedule Aug 12, 2023
Last updated local_offer
Tags Python●Pandas
tocTable of Contents
expand_more Master the mathematics behind data science with 100+ top-tier guides
Start your free 7-days trial now!
Start your free 7-days trial now!
Consider the following DataFrame:
import pandas as pd
'class':['economy','first','business','first','economy'], 'price':[4,10,7,8,3]})df
class price0 economy 41 first 102 business 73 first 84 economy 3
The class
column is a categorical with ordering (economy
< business
< first
).
The goal is to sort the DataFrame based on the class
column. To do so, we first convert class
into a categorical type, and set the ordering using the second parameter. At this point, the column has not yet been sorted, and so we use sort_values()
to perform the sort:
df['class'] = pd.Categorical(df['class'], ["economy", "business", "first"])df_new
class price0 economy 44 economy 32 business 71 first 103 first 8
Published by Isshin Inada
Edited by 0 others
Did you find this page useful?
thumb_up
thumb_down
Comment
Citation
Ask a question or leave a feedback...
thumb_up
4
thumb_down
0
chat_bubble_outline
0
settings
Enjoy our search
Hit / to insta-search docs and recipes!