这是一个简单的问题:我有一个numpy矩阵a,我想将其转换为数据帧(系列)中的一列,从而保留矩阵的多重索引。我的意思是,矩阵中的I,j位置将转换为I,j行索引。
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
有办法做到这一点吗?
您可以将stack
与DataFrame
构造函数一起使用:
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