2015-07-20 72 views
1

我是Python初学者。我有一些观察日期和次数的系列如下Python Pandas - 不对y轴上的条形图值进行排序

Date  Count 

2003  10 

2005  50 

2015  12 

2004  12 

2003  15 

2008  10 

2004  05 

我想绘制的图形,找出对今年计数和条形图(x轴为一年和Y轴为计数)。我正在使用下面的代码

import pandas as pd 

pd.value_counts(sfdf.Date_year).plot(kind='bar') 

我得到的是自动排序的条形图。所以我无法清晰地想象这些年来计数如何分配。有没有什么办法可以阻止排序条形图上的数据的数据,而是排序在X轴值(我,E年)?

+0

文件中的列没有被正确分隔,它是一个csv文件还是txt文件? –

回答

1

以下代码使用groupby()将同一年的多个实例组合在一起,然后调用groupby()对象上的sum()进行总结。默认情况下,groupby()将分组对象推送到数据框索引。我认为groupby()自动排序,但以防万一,sort(axis=0)将索引排序。然后剩下的就是阴谋。全部在一行中:

df = pd.DataFrame([[2003,10],[2005,50],[2015,12],[2004,12],[2003,15],[2008,10],[2004,5]],columns=['Date','Count']) 
df.groupby('Date').sum().sort(axis=0).plot(kind='bar') 
+0

谢谢Dov。有效。 – Arvind