2016-05-10 45 views
1

使用Python 2.7和筆記本電腦,我想展示一個簡單的系列,看起來像:熊貓 - 命名的系列一列,並繪製它

year 
2014 1 
2015 3 
2016 2 
Name: mySeries, dtype: int64 

我想:

  1. 命名第二列,我似乎無法成功s.columns = ['a','b']。我們如何做到這一點?
  2. 繪製年代如此寫成的結果。當我運行s.plot()我得到的年爲x,這是好的,但我得到奇怪的值: Graph

感謝您的幫助!

如果有幫助,這個系列來自於下面的代碼:

df = pd.read_csv(file, usecols=['dates'], parse_dates=True) 
df['dates'] = pd.to_datetime(df['date']) 
df['year'] = pd.DatetimeIndex(df['dartes']).year 
df 

這給了我:

dates year 
0 2015-05-05 14:21:00  2015 
1 2014-06-06 14:22:00  2014 
2 2015-05-05 14:14:00  2015 

上,我做的事: s = pd.Series(df.groupby('year').size())

+0

你有一個'Series'所以顧名思義它是'1-D',所以你不能指定多個值'列' – EdChum

+0

這很有道理:)謝謝! – Flag

回答

1

對我來說,通過astype工程投指數字串:

print s 
y 
2014 1 
2015 3 
2016 2 
Name: mySeries, dtype: int64 

s.index = s.index.astype(str) 
s.plot() 

graph

+0

太好了,非常感謝。仍然不太熟悉熊貓! :) – Flag

0

之前只投索引:

df.set_index(df.index.astype(str),inplace=True) 

然後你會得到你所期望的。

+0

謝謝,但不幸的是我正在使用一個系列('系列'對象沒有屬性'set_index')。我試圖在我的系列作品的df上做這個,但後來我不知道如何對索引值進行分組。 – Flag