2015-07-10 56 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