2012-08-31 82 views
0

我想探索熊貓圖書館,並停下我經常遇到的一個例子,我認爲熊貓有它的解決方案。鑑於以下代碼:在熊貓中彙總數據

In [63]: d1 = np.random.rand(3,3) 
In [63]: d2 = np.random.rand(3,3) 

In [64]:s1 = pandas.Series(d1,index = [['a1']*d1.shape[0], 
          [4]*d1.shape[0], 
          range(d1.shape[0])]) 

Out[64]:a1 4 0 [ 0.00881133 0.71344668 0.03611378] 
       1 [ 0.37328776 0.63195947 0.23000941] 
       2 [ 0.68466443 0.85891677 0.31740809] 

In [65]: s2 = pandas.Series(d2,index = [['a2']*d2.shape[0], 
          [5]*d2.shape[0], 
          range(d2.shape[0])]) 
Out[65]:a2 5 0 [ 0.00881133 0.71344668 0.03611378] 
       1 [ 0.37328776 0.63195947 0.23000941] 
       2 [ 0.68466443 0.85891677 0.31740809] 

s = s1.append(s2) 

a1 4 0 [ 0.00881133 0.71344668 0.03611378] 
     1 [ 0.37328776 0.63195947 0.23000941] 
     2 [ 0.68466443 0.85891677 0.31740809] 
    5 0 [ 0.00881133 0.71344668 0.03611378] 
     1 [ 0.37328776 0.63195947 0.23000941] 
     2 [ 0.68466443 0.85891677 0.31740809] 

如何獲得所有的數據矩陣單獨列表沒有他們的標籤?

回答

1

我收到了運行您的代碼的錯誤。但是,要將pandas系列轉換爲numpy陣列,請使用pandas.Series.values方法。 Wes的documentation做得非常好。花一些時間審查...

2

s.values將做的伎倆。

documentation:。DataFrame.values轉換幀到其numpy的陣列矩陣表示」

我想你的意思pandas.DataFrame上述(未SeriesSeries.values存在以及

+0

我的意思'pandas.Series '如果你看JustInTime的代碼,他已經創建了'pandas.Series',而不是'pandas.DataFrame'。 –

+0

將2維數組傳遞給Series不會導致非常有利的行爲; OP應該使用DataFrame –