2015-07-10 52 views
1

说,我有这样形式的字典:创建从字典中的数据帧 - 蟒蛇

dct = {'A': [1,2,3], 'B': [4,5,6,7]} 

怎样才可以转化为大熊猫数据帧这样的结果将是下面的形式:

Column1 Column2 
A  1 
A  2 
A  3 
B  4 
B  5 
B  6 
B  7 
+0

是那些两个不同的列? –

+0

是@AnandSKumar,显然我不知道如何创建表格,对不起, – bninopaul

回答

0
from itertools import chain 
pd.DataFrame(list(chain.from_iterable(
    ((k, v) for v in vals) for (k, vals) in dct.items())), 
    columns=('Column1', 'Column2')) 
+0

感谢,代码工作,这是更一般的,我忘了字典中的每个值都有不同的长度。 – bninopaul

+0

我怀疑可能是这种情况,我很高兴它适合你。 – zero323

1

您可以使用DataFrame.from_dict导入数据:

In [1059]: dct = {'A': [1,2,3], 'B': [4,5,6]} 

In [1060]: df = pnd.DataFrame.from_dict(dct) 

In [1061]: df 
Out[1061]: 
    A B 
0 1 4 
1 2 5 
2 3 6 

,然后只需用大熊猫非常方便melt功能unpivot的数据框:

In [1062]: pnd.melt(df) 
Out[1062]: 
variable value 
0  A  1 
1  A  2 
2  A  3 
3  B  4 
4  B  5 
5  B  6