2017-06-13 60 views
-1

我能夠按降序對包含日期值的列進行排序,但不能按升序進行排序。做了大量的研究,但無法找到解決方案。按大小排列大熊貓數據框列(包含日期值)

這是我到目前爲止有:

unique_dates_df.sort_values(['Date'],ascending=[False]) 

我給ascending= false以及true,但他們兩人都按降序排列

+0

您確定日期列是以日期時間格式嗎?你能檢查dtype嗎?如果不嘗試執行pd.to_datetime(df [your column]) –

回答

0

也許忘記指定輸出分類整理:

rng = pd.date_range('2017-04-03', periods=10) 
unique_dates_df = pd.DataFrame({'Date': rng, 'a': range(10)}) 
print (unique_dates_df) 
     Date a 
0 2017-04-03 0 
1 2017-04-04 1 
2 2017-04-05 2 
3 2017-04-06 3 
4 2017-04-07 4 
5 2017-04-08 5 
6 2017-04-09 6 
7 2017-04-10 7 
8 2017-04-11 8 
9 2017-04-12 9 

unique_dates_df = unique_dates_df.sort_values(['Date'],ascending=False) 
print (unique_dates_df) 
     Date a 
9 2017-04-12 9 
8 2017-04-11 8 
7 2017-04-10 7 
6 2017-04-09 6 
5 2017-04-08 5 
4 2017-04-07 4 
3 2017-04-06 3 
2 2017-04-05 2 
1 2017-04-04 1 
0 2017-04-03 0 

或使用參數inplace=True

unique_dates_df.sort_values(['Date'],ascending=False, inplace=True) 
print (unique_dates_df) 
     Date a 
9 2017-04-12 9 
8 2017-04-11 8 
7 2017-04-10 7 
6 2017-04-09 6 
5 2017-04-08 5 
4 2017-04-07 4 
3 2017-04-06 3 
2 2017-04-05 2 
1 2017-04-04 1 
0 2017-04-03 0