# Converting the DateTime column to datetime format and extracting the date bakery_data['DateTime'] = pd.to_datetime(bakery_data['DateTime']) bakery_data['Date'] = bakery_data['DateTime'].dt.date # Aggregating data as per the requirements # Daily transaction count daily_transaction_count = bakery_data.groupby('Date')['TransactionNo'].nunique() # Daily total item count (assuming each row represents one item sold) daily_item_count = bakery_data.groupby('Date')['Items'].count() # Convert DayType to numeric (weekday -> 0, weekend -> 1) bakery_data['DayTypeNumeric'] = bakery_data['DayType'].apply(lambda x: 0 if x == 'Weekday' else 1) # Daily DayType daily_day_type = bakery_data.groupby('Date')['DayTypeNumeric'].first() # Sales count by Daypart sales_by_daypart = bakery_data.groupby(['Date', 'Daypart'])['Items'].count().unstack(fill_value=0) # Sales count by Item sales_by_item = bakery_data.groupby(['Date', 'Items'])['Items'].count().unstack(fill_value=0) # Combining all the aggregated data into one dataframe combined_data = pd.DataFrame({ 'DailyTransactionCount': daily_transaction_count, 'DailyItemCount': daily_item_count, 'DayType': daily_day_type }).join(sales_by_daypart).join(sales_by_item) combined_data