import pandas as pdimport numpy as npfrom pandas import DataFrame,Series# 使用 Dataframe的列作为索引frame = DataFrame({'a':range(7),'b':range(7,0,-1), 'c':['one','one','one','two','two','two','two'], 'd':[0,1,2,0,1,2,3]})frameframe2 = frame.set_index(['c','d']) # set_index 函数可以将一个或者多个列转成行的索引并且创建一个新的dataframeframe2frame.set_index(['c','d'],drop=False) # 会自动把 c d 两列去掉,可以添加drop参数来决定他们的去留frame2.reset_index() # 和set_index相反,层次化的索引会被加入到列里面# 面板数据import pandas.io.data as webpdata = pd.Panel(dict((stk,web.get_data_yahoo(stk,'1/1/2009','6/1/2012')) for stk in ['AAPL','GOOG','MSFT','DELL'])) # 由一个DataFrame对象组成的字典或者三维ndaray创建panel对象pdatapdata = pdata.swapaxes('items','minor')pdata['Adj Close']pdata.ix[:,'6/1/2012',:]pdata.ix['Adj Close','5/22/2012':,:]stacked = pdata.ix[:,'5/30/2012'].to_frame()stacked.to_panel() # to_frame()的逆运算
新闻热点
疑难解答