हम groupby() का उपयोग करके पैंडास डेटाफ्रेम को समूहित करेंगे। ग्रूपर फ़ंक्शन का उपयोग करके उपयोग किए जाने वाले कॉलम का चयन करें। हम मिनट-वार समूहित करेंगे और कार बिक्री रिकॉर्ड के लिए नीचे दिखाए गए उदाहरण के लिए मिनट अंतराल के साथ पंजीकरण मूल्य के योग की गणना करेंगे।
सबसे पहले, मान लें कि निम्नलिखित तीन कॉलम के साथ हमारा पैंडास डेटाफ्रेम है। हमने Date_of_Purchase को टाइमस्टैम्प के साथ सेट किया है, जिसमें दिनांक और समय दोनों शामिल हैं:
dataFrame = pd.DataFrame(
{
"Car": ["Audi", "Lexus", "Tesla", "Mercedes", "BMW", "Toyota", "Nissan", "Bentley", "Mustang"],
"Date_of_Purchase": [
pd.Timestamp("2021-07-28 00:10:00"),
pd.Timestamp("2021-07-28 00:12:00"),
pd.Timestamp("2021-07-28 00:15:00"),
pd.Timestamp("2021-07-28 00:16:00"),
pd.Timestamp("2021-07-28 00:17:00"),
pd.Timestamp("2021-07-28 00:20:00"),
pd.Timestamp("2021-07-28 00:35:00"),
pd.Timestamp("2021-07-28 00:42:00"),
pd.Timestamp("2021-07-28 00:57:00"),
],
"Reg_Price": [1000, 1400, 1100, 900, 1700, 1800, 1300, 1150, 1350]
}
)
इसके बाद, groupby फ़ंक्शन के भीतर ग्रूपर का उपयोग करके Date_of_Purchase कॉलम का चयन करें। आवृत्ति को 7min यानी 7 मिनट के अंतराल पर समूहित के रूप में सेट किया गया है:
print("\nGroup Dataframe by 7 minutes...\n", dataFrame.groupby(pd.Grouper(key='Date_of_Purchase', axis=0, freq='7min')).sum())
उदाहरण
निम्नलिखित कोड है:
import pandas as pd
# dataframe with one of the columns as Date_of_Purchase
dataFrame = pd.DataFrame(
{
"Car": ["Audi", "Lexus", "Tesla", "Mercedes", "BMW", "Toyota", "Nissan", "Bentley", "Mustang"],
"Date_of_Purchase": [
pd.Timestamp("2021-07-28 00:10:00"),
pd.Timestamp("2021-07-28 00:12:00"),
pd.Timestamp("2021-07-28 00:15:00"),
pd.Timestamp("2021-07-28 00:16:00"),
pd.Timestamp("2021-07-28 00:17:00"),
pd.Timestamp("2021-07-28 00:20:00"),
pd.Timestamp("2021-07-28 00:35:00"),
pd.Timestamp("2021-07-28 00:42:00"),
pd.Timestamp("2021-07-28 00:57:00"),
],
"Reg_Price": [1000, 1400, 1100, 900, 1700, 1800, 1300, 1150, 1350]
}
)
print("DataFrame...\n", dataFrame)
# Grouper to select Date_of_Purchase column within groupby function
print("\nGroup Dataframe by 7 minutes...\n", dataFrame.groupby(pd.Grouper(key='Date_of_Purchase', axis=0, freq='7min')).sum())
आउटपुट
यह निम्नलिखित आउटपुट देगा:
DataFrame...
Car Date_of_Purchase Reg_Price
0 Audi 2021-07-28 00:10:00 1000
1 Lexus 2021-07-28 00:12:00 1400
2 Tesla 2021-07-28 00:15:00 1100
3 Mercedes 2021-07-28 00:16:00 900
4 BMW 2021-07-28 00:17:00 1700
5 Toyota 2021-07-28 00:20:00 1800
6 Nissan 2021-07-28 00:35:00 1300
7 Bentley 2021-07-28 00:42:00 1150
8 Mustang 2021-07-28 00:57:00 1350
Group Dataframe by 7 minutes...
Reg_Price
Date_of_Purchase
2021-07-28 00:07:00 2400.0
2021-07-28 00:14:00 5500.0
2021-07-28 00:21:00 NaN
2021-07-28 00:28:00 NaN
2021-07-28 00:35:00 1300.0
2021-07-28 00:42:00 1150.0
2021-07-28 00:49:00 NaN
2021-07-28 00:56:00 1350.0