मैं निम्नलिखित कार्य के साथ खुद को भ्रमित कर रहा हूं और मुझे आशा है कि कोई मुझे सही दिशा में इंगित कर सकता है। मेरे पास दो डेटासेट हैं, एक जनवरी 2019 के डेटा के साथ और दूसरा जनवरी 2020 के डेटा के साथ।
Df1
ID Date
5177 2019-01-31
5178 2019-01-31
5179 2019-01-31
5180 2019-01-31
5181 2019-01-31
5182 2019-01-31
5183 2019-01-31
5184 2019-01-30
5185 2019-01-30
5186 2019-01-30
Df2
ID Date
2918 2020-01-31
2919 2020-01-31
2920 2020-01-31
2921 2020-01-31
2922 2020-01-31
2923 2020-01-31
2924 2020-01-31
2925 2020-01-31
2926 2020-01-30
2927 2020-01-30
मैंने उन्हें लाइन चार्ट के रूप में निम्नानुसार प्लॉट करने की कोशिश की:
df1.groupby('Date').size().plot()
df2.groupby('Date').size().plot()
plt.xticks(rotation=90)
plt.show()
लेकिन आउटपुट अच्छा नहीं है क्योंकि परिणाम चार्ट के दो अलग-अलग क्षेत्रों में दिखाए गए हैं (एक 2019 है और दूसरा 2020 है)। तो मैं जो करने की कोशिश कर रहा हूं वह इन डेटा को बार चार्ट के रूप में प्लॉट करना है, ताकि बार-बार डेटा की आवृत्ति की तुलना आसानी से महीनों के माध्यम से की जा सके।
मैंने निम्नानुसार कोशिश की है:
df1.groupby(['Date'])['Date'].size().plot(kind='bar')
df2.groupby(['Date'])['Date'].size().plot(kind='bar')
लेकिन यह df1 के मानों और df2 के मानों के बीच अंतर नहीं करता है (साथ ही, बार एक ही रंग में हैं)।
मैं जो चाहता हूं वह एक्स-अक्ष पर तारीख के साथ एक चार्ट है (केवल दिन, जैसे महीने समान हैं और मुझे पता है कि मैं किस वर्ष की तुलना कर रहा हूं)। अलग-अलग रंगों के साथ, मुझे 1 से डेटा और 2 से डेटा प्लॉट करना होगा (किंवदंती बताएगी कि कौन सा df1/2 है)।
क्या आप कृपया मुझे बता सकते हैं कि अपेक्षित आउटपुट प्राप्त करने के लिए डेटा कैसे प्लॉट करें?
धन्यवाद
1 उत्तर
आप पहले एक डेटाफ़्रेम में शामिल हो सकते हैं, लेकिन पहले अपनी तिथियों के प्रारूप को strftime
के साथ '%m-%d'
में बदल सकते हैं, और आप rename
के आउटपुट को size
कॉलम में भी बदल सकते हैं। साल।
df1['Date'] = pd.to_datetime(df1['Date']).dt.strftime('%m-%d')
df2['Date'] = pd.to_datetime(df2['Date']).dt.strftime('%m-%d')
(df1.groupby('Date').size().rename('Size').to_frame().join(
df2.groupby('Date').size().rename('Size').to_frame(),
lsuffix='_2019', rsuffix='_2020').plot(kind='bar'))
संबंधित सवाल
नए सवाल
python
पायथन एक बहु-प्रतिमान है, गतिशील रूप से टाइप किया हुआ, बहुउद्देशीय प्रोग्रामिंग भाषा है। यह एक साफ और एक समान वाक्यविन्यास सीखने, समझने और उपयोग करने के लिए त्वरित होने के लिए डिज़ाइन किया गया है। कृपया ध्यान दें कि अजगर 2 आधिकारिक तौर पर 01-01-2020 के समर्थन से बाहर है। फिर भी, संस्करण-विशिष्ट पायथन सवालों के लिए, [अजगर -२.०] या [अजगर -३.x] टैग जोड़ें। पायथन वेरिएंट (जैसे, ज्योथन, PyPy) या लाइब्रेरी (उदा।, पांडस और न्यूमपी) का उपयोग करते समय, कृपया इसे टैग में शामिल करें।