對包含文本且屬於數據類型對象,df.sort語法的pandas數據框中的列進行排序時,按照正確的順序對apple,orange,bananna進行排序。但是,如果我將水果列轉換爲分類數據類型,然後嘗試排序它不起作用。如何對熊貓數據框中的分類數據進行排序
有人可以分享如何對數據框中的分類數據進行排序。
我想首先按日期時間數據類型列排序,然後按類別數據類型列表排序,然後按浮點數或整型數字排序。
這(帳戶不是分類的)按month_date排序,它是datetime對象和帳戶(A-Z)正確。
#data['month_name'] = pd.Categorical(data['month_name'],categories=data.month_name.unique().tolist())
#data['account'] = pd.Categorical(data['account'],categories=data.account.unique().tolist())
column_list = data.columns.values.tolist()
sorted_data = data.sort(["month_date","account"], ascending=True)
display(sorted_data)
例
- 蘋果
- Bananna
- 胡蘿蔔
這(其中帳戶是絕對)不正確排序(注意pd.categorical數據不再註釋掉)
data['month_name'] = pd.Categorical(data['month_name'],categories=data.month_name.unique().tolist())
data['account'] = pd.Categorical(data['account'],categories=data.account.unique().tolist())
column_list = data.columns.values.tolist()
sorted_data = data.sort(["month_date","account"], ascending=True)
display(sorted_data)
例
- 蘋果
- 胡蘿蔔
- Bananna
你必須表現出你在做什麼(複製pastable代碼) – Jeff 2014-12-04 02:16:03
我沒有表現出一個典型例,我有一個數據框有三列,第一個是日期時間,第二個是分類數據,我想按日期時間排序,然後是分類。所以它會是2014-06-01,蘋果2014-06-01,bananna,2014-07-01菠蘿。 – yoshiserry 2014-12-04 02:19:20
顯示實際的代碼,讓人們看起來更容易。並應該是複製/可以粘貼的。 – Jeff 2014-12-04 02:30:25