python - Advanced averaging with multiindex dataframe in pandas -
इस बहु-आयामी डेटाफ्रेम में,
सी 1 सी 2 सी 3 प्रमुख नाबालिग 1 -1.202766 -0.502679 1.915304 2 0.097658 0.604051 -0.497243 3 -1.285027 -1.200143 0.087209 डी 3 -0.231444 1.518543 2.139600 4 -1.336436 -0.299769 -0.600134 5 -0.873389 1.949733 -0.757263 एक 1 -0.222766 -2.302679 0.615304 2 1.047648 1.304051 -1.497243 3 -1.285027 -1.000143 0.087209 डी 3 -0.631464 1.318543 0.139600 4 -0.316436 -0.193749 -1.500134 5 -06 9 3689 0.449753 -1.347263 मैं दोहराया प्रमुख सूचकांकों पर औसतन प्राप्त करना चाहता हूं, जो कि इस तरह की है < / P>
सी 1 सी 2 सी 3 प्रमुख अल्पसंख्यक 1 -1.202766 -0.502679 1.915304 2 0.097658 0.604051 -0.497243 3 -1.285027 -1.200143 0.087209 डी 3 -0.231444 1.518543 2.139600 4 -1.336436 -0.299769 -0.600134 5 -0.873389 1.949733 - 0.757263 जहां मूल्य औसत मूल्य हैं जाहिर है df.groupby (level = 'major')। मतलब () यहां काम नहीं करता है, क्योंकि मामूली अनुक्रमित भी एक मान के औसत। कैसे आगे बढ़ें?
जैसा कि टिप्पणियों में वर्णित है, df.groupby (level = ['major ',' नाबालिग '])। मतलब ()। Dropna () दोनों अक्षों पर सोलिअल मान पैदा करेगा टिप्पणियों में चर्चा पर अपना पालन करें गैर-अद्वितीय स्तंभ नामों के साथ आपके खराब डेटा संरचना मामले के लिए, निम्नलिखित हैक कार्य करता है: <प्री> एलएलएल = [पीडी.डेटाफ्रेम (पीडी.डेटाफ़्रेम (डीएफ [आई])। मतलब (अक्ष = 1), स्तंभ = [i]) में मैं आईटी में df.columns.unique ()] pd.concat (एलएल, अक्ष = 1) pd.DataFrame (df [i]) यह सुनिश्चित करता है कि df [i] एक < कोड> डेटाफ़्रेम , यदि कॉलम का नाम डुप्लिकेट नहीं है बाकी डेटाफ्रेमों को इकट्ठा करने और फिर उन्हें स्टैकिंग करने के बारे में है। बेहतर डेटा संरचना कहें कि आपके पास अलग-अलग डेटा सेट एकत्र किए गए हैं:
id c1 c2 c1 c2 0 1 1 2 2 1 3 4 5 6 इसे सहेजने का एक बेहतर तरीका है एक नमूना पहचानकर्ता रखना
नमूना आईडी सी 1 सी 2 0 0 1 1 1 0 2 2 0 1 3 4 1 1 5 6 अब, आपने अपनी अच्छी तरह से पहचानी गई बहु परत डेटा, जहां आप बना सकते हैं विभिन्न नमूनों पर औसत मूल्य।
Comments
Post a Comment