पांडास डेटाफ़्रेम में सप्ताह के अनुसार समूह कैसे बनाएं (उदाहरण के साथ)


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

 #convert date column to datetime and subtract one week
df[' date '] = pd. to_datetime (df[' date ']) - pd. to_timedelta (7, unit=' d ')

#calculate sum of values, grouped by week
df. groupby ([pd. Group (key=' date ', freq=' W ')])[' values ']. sum ()

यह विशेष सूत्र दिनांक कॉलम में पंक्तियों को सप्ताह के अनुसार समूहित करता है और डेटाफ़्रेम में मानों के कॉलम के मानों के योग की गणना करता है।

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

उदाहरण: पंडों में सप्ताह के अनुसार समूह कैसे बनाएं

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

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' date ': pd. date_range (start='1/5/2022', freq='D', periods=15),
                   ' sales ': [6, 8, 9, 5, 4, 8, 8, 3, 5, 9, 8, 3, 4, 7, 7]})

#view DataFrame
print (df)

         dirty date
0 2022-01-05 6
1 2022-01-06 8
2 2022-01-07 9
3 2022-01-08 5
4 2022-01-09 4
5 2022-01-10 8
6 2022-01-11 8
7 2022-01-12 3
8 2022-01-13 5
9 2022-01-14 9
10 2022-01-15 8
11 2022-01-16 3
12 2022-01-17 4
13 2022-01-18 7
14 2022-01-19 7

संबंधित: पांडा में दिनांक सीमा कैसे बनाएं

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

 #convert date column to datetime and subtract one week
df[' date '] = pd. to_datetime (df[' date ']) - pd. to_timedelta (7, unit=' d ')

#calculate sum of values, grouped by week
df. groupby ([pd. Group (key=' date ', freq=' W ')])[' sales ']. sum ()

date
2022-01-02 32
2022-01-09 44
2022-01-16 18
Freq: W-SUN, Name: sales, dtype: int64

यहां परिणाम की व्याख्या करने का तरीका बताया गया है:

  • 1/2/2022 के अगले दिन से शुरू होने वाले सप्ताह के दौरान कुल 32 बिक्री हुईं।
  • 01/09/2022 के अगले दिन से शुरू होने वाले सप्ताह के दौरान कुल 44 बिक्री हुईं।
  • 01/16/2022 के बाद वाले दिन से शुरू होने वाले सप्ताह के दौरान कुल 18 बिक्री की गईं।

यह ध्यान दिया जाना चाहिए कि डिफ़ॉल्ट रूप से, पांडा यह मानते हैं कि सप्ताह रविवार ( W-SUN ) के अगले दिन शुरू होता है।

हालाँकि, दस्तावेज़ के अनुसार, आप Freq के लिए इस मान को बदल सकते हैं।

उदाहरण के लिए, यदि आप चाहते हैं कि प्रत्येक सप्ताह सोमवार (यानी मंगलवार) के बाद वाले दिन से शुरू हो तो आप Freq=W-MON निर्दिष्ट कर सकते हैं।

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

 #convert date column to datetime and subtract one week
df[' date '] = pd. to_datetime (df[' date ']) - pd. to_timedelta (7, unit=' d ')

#calculate max of values, grouped by week
df. groupby ([pd. Group (key=' date ', freq=' W ')])[' sales ']. max ()

date
2022-01-02 9
2022-01-09 9
2022-01-16 7
Freq: W-SUN, Name: sales, dtype: int64

यहां परिणाम की व्याख्या करने का तरीका बताया गया है:

  • 01/02/2022 के अगले दिन से शुरू होने वाले सप्ताह के दौरान प्रति दिन अधिकतम बिक्री 9 थी।
  • 01/9/2022 के बाद वाले दिन से शुरू होने वाले सप्ताह के दौरान प्रति दिन बिक्री की अधिकतम संख्या 9 थी।
  • 01/16/2022 के बाद वाले दिन से शुरू होने वाले सप्ताह के दौरान प्रति दिन बिक्री की अधिकतम संख्या 7 थी।

नोट : आप पांडा में ग्रुपबाय ऑपरेशन का पूरा दस्तावेज़ यहां पा सकते हैं।

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

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

पांडास डेटाफ़्रेम में महीने के अनुसार समूह कैसे बनाएं
पांडास डेटाफ़्रेम में दिन के अनुसार समूह कैसे बनाएं
ग्रुपबी का उपयोग कैसे करें और पांडा में सशर्त गिनती कैसे करें

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

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