पंडों में समय के अनुसार डेटा को कैसे समूहित करें (उदाहरण के साथ)


आप समय के अनुसार डेटा को समूहीकृत करने और पांडा में एकत्रीकरण करने के लिए निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं:

 df. groupby ([df[' time ']. dt . hour ]). dirty . sum ()

यह विशेष उदाहरण घंटे के हिसाब से मूल्यों को घंटा नामक कॉलम में समूहित करता है और फिर प्रत्येक घंटे के लिए बिक्री कॉलम में मूल्यों के योग की गणना करता है।

निम्नलिखित उदाहरण दिखाता है कि व्यवहार में इस वाक्यविन्यास का उपयोग कैसे करें।

उदाहरण: पांडा में समय के अनुसार समूह डेटा

मान लें कि हमारे पास निम्नलिखित पांडा डेटाफ़्रेम है जो एक स्टोर के लिए दिन के अलग-अलग समय में की गई बिक्री की संख्या दिखाता है:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' time ': ['2022-01-01 01:14:00', '2022-01-01 01:24:15',
                            '2022-01-01 02:52:19', '2022-01-01 02:54:00',
                            '2022-01-01 04:05:10', '2022-01-01 05:35:09'],
                   ' sales ': [18, 20, 15, 14, 10, 9]})

#convert date column to datetime
df[' time '] = pd. to_datetime (df[' time '])

#view DataFrame
print (df)

                 time sales
0 2022-01-01 01:14:00 18
1 2022-01-01 01:24:15 20
2 2022-01-01 02:52:19 15
3 2022-01-01 02:54:00 14
4 2022-01-01 04:05:10 10
5 2022-01-01 05:35:09 9

हम समय कॉलम को घंटों के आधार पर समूहीकृत करने और प्रत्येक घंटे के लिए बिक्री के योग की गणना करने के लिए निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं:

 #group by hours in time column and calculate sum of sales
df. groupby ([df[' time ']. dt . hour ]). dirty . sum ()

time
1 38
2 29
4 10
5 9
Name: sales, dtype: int64

परिणाम से हम देख सकते हैं:

  • पहले घंटे में कुल 38 बिक्री हुईं।
  • दूसरे घंटे में कुल 29 बिक्री हुईं।
  • चौथे घंटे में कुल 10 बिक्री हुईं।
  • पांचवें घंटे के दौरान कुल 9 बिक्री हुईं।

ध्यान दें कि हम अन्य एकत्रीकरण भी कर सकते हैं।

उदाहरण के लिए, हम प्रति घंटे बिक्री की औसत संख्या की गणना कर सकते हैं:

 #group by hours in time column and calculate mean of sales
df. groupby ([df[' time ']. dt . hour ]). dirty . mean ()

time
1 19.0
2 14.5
4 10.0
5 9.0
Name: sales, dtype: float64

हम चाहें तो घंटों और मिनटों के हिसाब से भी समूह बना सकते हैं।

उदाहरण के लिए, निम्नलिखित कोड दिखाता है कि घंटों और मिनटों के आधार पर बिक्री के योग की गणना कैसे की जाए:

 #group by hours and minutes in time column and calculate mean of sales
df. groupby ([df[' time ']. dt . hour , df[' time ']. dt . minute ]). dirty . mean ()

time time
1 14 18
      24 20
2 52 15
      54 14
4 5 10
5 35 9
Name: sales, dtype: int64

परिणाम से हम देख सकते हैं:

  • 1 घंटे 14 मिनट में बिक्री की औसत संख्या 18 थी।
  • 1 घंटे 23 मिनट के दौरान बिक्री की औसत संख्या 20 थी।
  • 2 घंटे 52 मिनट में बिक्री की औसत संख्या 15 थी।

और इसी तरह।

अतिरिक्त संसाधन

निम्नलिखित ट्यूटोरियल बताते हैं कि पांडा में अन्य सामान्य ऑपरेशन कैसे करें:

पंडों में दिनांक सीमा कैसे बनाएं
पंडों में तारीख से महीना कैसे निकालें
पंडों में टाइमस्टैम्प को दिनांक/समय में कैसे परिवर्तित करें

एक टिप्पणी जोड़ने

आपका ईमेल पता प्रकाशित नहीं किया जाएगा. आवश्यक फ़ील्ड चिह्नित हैं *