मैं तीन स्तर dict का एक उदाहरण का उपयोग करते हुए एक 3 स्तर नेस्टेड शब्दकोशनेस्टेड MultiIndex के शब्दकोश DataFrame (3 स्तर)
Nested dictionary to multiindex dataframe where dictionary keys are column labels
मैं तीन स्तर dict का एक उदाहरण का उपयोग करते हुए एक 3 स्तर नेस्टेड शब्दकोशनेस्टेड MultiIndex के शब्दकोश DataFrame (3 स्तर)
Nested dictionary to multiindex dataframe where dictionary keys are column labels
के लिए इस के बराबर करना चाहते हैं पांडा
In [1]: import pandas as pd
In [2]: dictionary = {'A': {'a': {1: [2,3,4,5,6],
...: 2: [2,3,4,5,6]},
...: 'b': {1: [2,3,4,5,6],
...: 2: [2,3,4,5,6]}},
...: 'B': {'a': {1: [2,3,4,5,6],
...: 2: [2,3,4,5,6]},
...: 'b': {1: [2,3,4,5,6],
...: 2: [2,3,4,5,6]}}}
और आपके द्वारा लिंक किए गए प्रश्न के आधार पर निम्न शब्दकोश समझ
In [3]: reform = {(level1_key, level2_key, level3_key): values
...: for level1_key, level2_dict in dictionary.items()
...: for level2_key, level3_dict in level2_dict.items()
...: for level3_key, values in level3_dict.items()}
कौन सा
In [4]: reform
Out[4]:
{('A', 'a', 1): [2, 3, 4, 5, 6],
('A', 'a', 2): [2, 3, 4, 5, 6],
('A', 'b', 1): [2, 3, 4, 5, 6],
('A', 'b', 2): [2, 3, 4, 5, 6],
('B', 'a', 1): [2, 3, 4, 5, 6],
('B', 'a', 2): [2, 3, 4, 5, 6],
('B', 'b', 1): [2, 3, 4, 5, 6],
('B', 'b', 2): [2, 3, 4, 5, 6]}
देता पांडा DataFrame
In [5]: pd.DataFrame(reform)
Out[5]:
A B
a b a b
1 2 1 2 1 2 1 2
0 2 2 2 2 2 2 2 2
1 3 3 3 3 3 3 3 3
2 4 4 4 4 4 4 4 4
3 5 5 5 5 5 5 5 5
4 6 6 6 6 6 6 6 6
In [6]: df = pd.DataFrame(reform).T
Out[6]:
0 1 2 3 4
A a 1 2 3 4 5 6
2 2 3 4 5 6
b 1 2 3 4 5 6
2 2 3 4 5 6
B a 1 2 3 4 5 6
2 2 3 4 5 6
b 1 2 3 4 5 6
2 2 3 4 5 6
आप देख सकते हैं के लिए, आप आसानी से समझ और टपल के लिए नए प्रमुख के लिए एक और पंक्ति जोड़कर स्तरों की संख्या बढ़ा सकता है।
बोनस: अनुक्रमित करने के लिए नाम जोड़ने
In [7]: names=['level1', 'level2', 'level3']
In [8]: df.index.set_names(names, inplace=True)
In [9]: df
Out[9]:
0 1 2 3 4
level1 level2 level3
A a 1 2 3 4 5 6
2 2 3 4 5 6
b 1 2 3 4 5 6
2 2 3 4 5 6
B a 1 2 3 4 5 6
2 2 3 4 5 6
b 1 2 3 4 5 6
2 2 3 4 5 6
चेक इस बाहर: [का निर्माण-पांडा-dataframe-आइटम में नेस्टेड-शब्दकोश से] (http://stackoverflow.com/questions/13575090 StackOverflow पर/निर्माण-पांडा-डेटाफ्रेम-से-आइटम-इन-नेस्टेड-डिक्शनरी)। – Rhubarb