2016-04-28 16 views
3

これは簡単な質問です: 行列のマルチインデックスを保持しながら、データフレーム(シリーズ)の列に変換したいnumpy行列Aがあります。これは私が意味するのは、行列のi、jの位置をiに変換すること、jはpandasで行をインデックスすることです。 numpy行列からpandas系列

In [68]: A = np.array([[1,2],[3,4]]) 

は、この行列、いくつかのブードゥー教の魔法を取ると、この取得:

In [69]: Series([1,2,3,4],index = [[0,0,1,1],[0,1,0,1]]) 
Out[69]: 
0 0 1 
    1 2 
1 0 3 
    1 4 
dtype: int64 

これを実行する方法はありますか?

答えて

5

あなたはDataFrameコンストラクタでstackを使用することができます。

import pandas as pd 
import numpy as np 

print pd.DataFrame(np.array([[1,2],[3,4]])).stack() 

0 0 1 
    1 2 
1 0 3 
    1 4 
dtype: int32 
+0

これは素晴らしいです、ありがとう! – tcapelle

関連する問題