मेरे पास निम्न डेटा और फ़ंक्शन द्वारा निर्मित डेटाफ़्रेम है:


model.Crops = ["barley", "rapeseed", "wheat"]
model.FixedInputs = ["land", "labor", "capital"]
Beta =  [[0.3, 0.1, 0.3],\
        [0.2, 0.1, 0.2],\
        [0.3, 0.1, 0.2]]

pd.DataFrame(data=Beta_F_Data, index=model.Crops, columns=model.FixedInputs)

मुझे यह मैट्रिक्स मिला:

FixedInputs  land  labor  capital
Crops                            
barley        0.3    0.1      0.3
rapeseed      0.2    0.1      0.2
wheat         0.3    0.1      0.2

मैं इस मैट्रिक्स को इंडेक्स और कॉलम के साथ एक शब्दकोश में कुंजी के रूप में कैसे परिवर्तित कर सकता हूं?

मैंने df.to_dict() की कोशिश की, लेकिन यह केवल कॉलम को कुंजी के रूप में उपयोग करता है।

इसे ऐसा दिखना चाहिए:

dict = {(barley, land): 0.3, (barley, labor): 0.1, ...(wheat, capital):0.2}
1
Linmei Shang 3 जुलाई 2019, 13:20

1 उत्तर

सबसे बढ़िया उत्तर

to_dict को कॉल करने से पहले आपको stack करना होगा

df.stack().to_dict()

Out[389]:
{('barley', 'land'): 0.3,
 ('barley', 'labor'): 0.1,
 ('barley', 'capital'): 0.3,
 ('rapeseed', 'land'): 0.2,
 ('rapeseed', 'labor'): 0.1,
 ('rapeseed', 'capital'): 0.2,
 ('wheat', 'land'): 0.3,
 ('wheat', 'labor'): 0.1,
 ('wheat', 'capital'): 0.2}
10
Andy L. 3 जुलाई 2019, 13:26