2013-04-20 124 views
2

原来的CSV文件中的数据是这样的:如何将csv文件读入pandas具有多行索引级别的DataFrame?

06/04/2011,104.64,105.17 
07/04/2011,104.98,105.51 
08/04/2011,105.43,105.96 
11/04/2011,104.47,104.99 

如何可以读取CSV文件导入到数据帧,并添加多行指数水平,或添加多行指数为CSV并导入到数据帧如下:

   JAS 
     date  bid ask 
06/04/2011 104.64 105.17 
07/04/2011 104.98 105.51 
08/04/2011 105.43 105.96 
11/04/2011 104.47 104.99 

回答

4

读取CSV,将第一个(第0)列设置为索引。

In [8]: df = pd.read_csv(StringIO("""06/04/2011,104.64,105.17 
07/04/2011,104.98,105.51 
08/04/2011,105.43,105.96 
11/04/2011,104.47,104.99"""), index_col=0, header=None) 

创建一个新的MultiIndex并将其分配给列。

In [11]: df.columns = pd.MultiIndex.from_tuples([('JAS', 'bid'), ('JAS', 'ask')]) 

最后,命名索引,我们有你想要的结果。

In [12]: df.index.name = 'date' 

In [13]: df 
Out[13]: 
       JAS   
       bid  ask 
date      
06/04/2011 104.64 105.17 
07/04/2011 104.98 105.51 
08/04/2011 105.43 105.96 
11/04/2011 104.47 104.99 
相关问题