{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "3fe4be99-0e6b-4c1b-85bf-ec3aa179c708",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:27:50.366811Z",
     "iopub.status.busy": "2026-06-10T12:27:50.366544Z",
     "iopub.status.idle": "2026-06-10T12:27:50.719450Z",
     "shell.execute_reply": "2026-06-10T12:27:50.718586Z",
     "shell.execute_reply.started": "2026-06-10T12:27:50.366780Z"
    }
   },
   "outputs": [],
   "source": [
    "import pandas as pd"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "9ea759de-484f-470e-bf91-a72d3a1fa976",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:27:56.666739Z",
     "iopub.status.busy": "2026-06-10T12:27:56.666267Z",
     "iopub.status.idle": "2026-06-10T12:27:56.754234Z",
     "shell.execute_reply": "2026-06-10T12:27:56.753397Z",
     "shell.execute_reply.started": "2026-06-10T12:27:56.666702Z"
    }
   },
   "outputs": [],
   "source": [
    "orders = pd.read_csv('https://brick-flow.de/data/bestellungen.csv')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "e467c000-1b43-4e70-825c-3f7a5baa55ad",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:27:59.541294Z",
     "iopub.status.busy": "2026-06-10T12:27:59.540981Z",
     "iopub.status.idle": "2026-06-10T12:27:59.560051Z",
     "shell.execute_reply": "2026-06-10T12:27:59.559181Z",
     "shell.execute_reply.started": "2026-06-10T12:27:59.541261Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bestellnr</th>\n",
       "      <th>bestelldatum</th>\n",
       "      <th>kundennr</th>\n",
       "      <th>anzahl_pakete</th>\n",
       "      <th>bestellwert</th>\n",
       "      <th>code</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>8001</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1238</td>\n",
       "      <td>3</td>\n",
       "      <td>98.62</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>8002</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1079</td>\n",
       "      <td>3</td>\n",
       "      <td>137.41</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>8003</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1041</td>\n",
       "      <td>1</td>\n",
       "      <td>103.59</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>8004</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1297</td>\n",
       "      <td>3</td>\n",
       "      <td>98.92</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>8005</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1081</td>\n",
       "      <td>2</td>\n",
       "      <td>79.31</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   bestellnr bestelldatum  kundennr  anzahl_pakete  bestellwert code\n",
       "0       8001   2026-01-01      1238              3        98.62  NaN\n",
       "1       8002   2026-01-01      1079              3       137.41  NaN\n",
       "2       8003   2026-01-01      1041              1       103.59  NaN\n",
       "3       8004   2026-01-01      1297              3        98.92  NaN\n",
       "4       8005   2026-01-01      1081              2        79.31  NaN"
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "orders.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "380f890e-0249-4027-9310-0cd194b8972d",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:39:18.180253Z",
     "iopub.status.busy": "2026-06-10T12:39:18.180074Z",
     "iopub.status.idle": "2026-06-10T12:39:18.183312Z",
     "shell.execute_reply": "2026-06-10T12:39:18.182797Z",
     "shell.execute_reply.started": "2026-06-10T12:39:18.180237Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(1616, 6)"
      ]
     },
     "execution_count": 10,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "orders.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "9f4dc89e-af0a-4ab1-b846-fe03dae187be",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:39:35.335000Z",
     "iopub.status.busy": "2026-06-10T12:39:35.334646Z",
     "iopub.status.idle": "2026-06-10T12:39:35.340455Z",
     "shell.execute_reply": "2026-06-10T12:39:35.339561Z",
     "shell.execute_reply.started": "2026-06-10T12:39:35.334944Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "6"
      ]
     },
     "execution_count": 12,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "orders.shape[1]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "909fc3d4-ad17-4a1d-9f7f-d4f6d1a778c8",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:31:46.307262Z",
     "iopub.status.busy": "2026-06-10T12:31:46.307051Z",
     "iopub.status.idle": "2026-06-10T12:31:46.312383Z",
     "shell.execute_reply": "2026-06-10T12:31:46.311683Z",
     "shell.execute_reply.started": "2026-06-10T12:31:46.307240Z"
    }
   },
   "outputs": [],
   "source": [
    "mai26 = orders[ orders['code'] == 'MAIDUFT26' ]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "e92602d8-abcd-43dd-b271-78c0dad1b030",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:31:48.835565Z",
     "iopub.status.busy": "2026-06-10T12:31:48.835379Z",
     "iopub.status.idle": "2026-06-10T12:31:48.844326Z",
     "shell.execute_reply": "2026-06-10T12:31:48.843359Z",
     "shell.execute_reply.started": "2026-06-10T12:31:48.835548Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bestellnr</th>\n",
       "      <th>bestelldatum</th>\n",
       "      <th>kundennr</th>\n",
       "      <th>anzahl_pakete</th>\n",
       "      <th>bestellwert</th>\n",
       "      <th>code</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>1149</th>\n",
       "      <td>9150</td>\n",
       "      <td>2026-04-25</td>\n",
       "      <td>1209</td>\n",
       "      <td>1</td>\n",
       "      <td>80.29</td>\n",
       "      <td>MAIDUFT26</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1151</th>\n",
       "      <td>9152</td>\n",
       "      <td>2026-04-25</td>\n",
       "      <td>1300</td>\n",
       "      <td>3</td>\n",
       "      <td>588.86</td>\n",
       "      <td>MAIDUFT26</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1154</th>\n",
       "      <td>9155</td>\n",
       "      <td>2026-04-25</td>\n",
       "      <td>1286</td>\n",
       "      <td>1</td>\n",
       "      <td>184.17</td>\n",
       "      <td>MAIDUFT26</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1155</th>\n",
       "      <td>9156</td>\n",
       "      <td>2026-04-25</td>\n",
       "      <td>1189</td>\n",
       "      <td>4</td>\n",
       "      <td>106.72</td>\n",
       "      <td>MAIDUFT26</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1156</th>\n",
       "      <td>9157</td>\n",
       "      <td>2026-04-26</td>\n",
       "      <td>1236</td>\n",
       "      <td>2</td>\n",
       "      <td>75.88</td>\n",
       "      <td>MAIDUFT26</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "      bestellnr bestelldatum  kundennr  anzahl_pakete  bestellwert       code\n",
       "1149       9150   2026-04-25      1209              1        80.29  MAIDUFT26\n",
       "1151       9152   2026-04-25      1300              3       588.86  MAIDUFT26\n",
       "1154       9155   2026-04-25      1286              1       184.17  MAIDUFT26\n",
       "1155       9156   2026-04-25      1189              4       106.72  MAIDUFT26\n",
       "1156       9157   2026-04-26      1236              2        75.88  MAIDUFT26"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "mai26.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "983583c0-9b98-42ee-9784-bd7ec2a39823",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:32:54.464015Z",
     "iopub.status.busy": "2026-06-10T12:32:54.463690Z",
     "iopub.status.idle": "2026-06-10T12:32:54.469960Z",
     "shell.execute_reply": "2026-06-10T12:32:54.469092Z",
     "shell.execute_reply.started": "2026-06-10T12:32:54.463985Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "np.float64(15517.880000000001)"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "mai26['bestellwert'].sum()"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "a697d009-02ed-4d18-8f1e-f20b9fedaf6d",
   "metadata": {},
   "source": [
    "## Aufgabe \n",
    "Schreiben Sie eine Funktion `kampagne` die den DataFrame mit den Bestellungen und einen Kampagnen-Code als Parameter bekommt und ein Tupel mit der Anzahl der Bestellung und dem Gesamtumsatz dieser Bestellungen zurückliefert."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "0d716c2d-1aa1-48d8-9d4d-e88e10131899",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:38:02.828805Z",
     "iopub.status.busy": "2026-06-10T12:38:02.828497Z",
     "iopub.status.idle": "2026-06-10T12:38:02.833451Z",
     "shell.execute_reply": "2026-06-10T12:38:02.832505Z",
     "shell.execute_reply.started": "2026-06-10T12:38:02.828775Z"
    }
   },
   "outputs": [],
   "source": [
    "def kampagne(alleBestellungen, kampagnenCode):\n",
    "    gefiltert = alleBestellungen[ alleBestellungen['code'] == kampagnenCode ]\n",
    "\n",
    "    anzahl = gefiltert.shape[0]\n",
    "    summeUmsatz = gefiltert['bestellwert'].sum()\n",
    "\n",
    "    return (anzahl, summeUmsatz)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "1e70a1e5-b40c-4a89-baea-7939d69f0e57",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:38:14.188699Z",
     "iopub.status.busy": "2026-06-10T12:38:14.188364Z",
     "iopub.status.idle": "2026-06-10T12:38:14.196750Z",
     "shell.execute_reply": "2026-06-10T12:38:14.195813Z",
     "shell.execute_reply.started": "2026-06-10T12:38:14.188666Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(70, np.float64(15517.880000000001))"
      ]
     },
     "execution_count": 9,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "kampagne(orders, 'MAIDUFT26')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "ba92098c-a5b7-4ec9-b5be-1604c6fd3c6a",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:40:19.004586Z",
     "iopub.status.busy": "2026-06-10T12:40:19.004253Z",
     "iopub.status.idle": "2026-06-10T12:40:19.017108Z",
     "shell.execute_reply": "2026-06-10T12:40:19.016204Z",
     "shell.execute_reply.started": "2026-06-10T12:40:19.004555Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bestellnr</th>\n",
       "      <th>bestelldatum</th>\n",
       "      <th>kundennr</th>\n",
       "      <th>anzahl_pakete</th>\n",
       "      <th>bestellwert</th>\n",
       "      <th>code</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>8001</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1238</td>\n",
       "      <td>3</td>\n",
       "      <td>98.62</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>8002</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1079</td>\n",
       "      <td>3</td>\n",
       "      <td>137.41</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>8003</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1041</td>\n",
       "      <td>1</td>\n",
       "      <td>103.59</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>8004</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1297</td>\n",
       "      <td>3</td>\n",
       "      <td>98.92</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>8005</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1081</td>\n",
       "      <td>2</td>\n",
       "      <td>79.31</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   bestellnr bestelldatum  kundennr  anzahl_pakete  bestellwert code\n",
       "0       8001   2026-01-01      1238              3        98.62  NaN\n",
       "1       8002   2026-01-01      1079              3       137.41  NaN\n",
       "2       8003   2026-01-01      1041              1       103.59  NaN\n",
       "3       8004   2026-01-01      1297              3        98.92  NaN\n",
       "4       8005   2026-01-01      1081              2        79.31  NaN"
      ]
     },
     "execution_count": 13,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "orders.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "c7777ce0-7725-4663-af69-096ab43021f3",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:41:16.284016Z",
     "iopub.status.busy": "2026-06-10T12:41:16.283706Z",
     "iopub.status.idle": "2026-06-10T12:41:16.290789Z",
     "shell.execute_reply": "2026-06-10T12:41:16.289836Z",
     "shell.execute_reply.started": "2026-06-10T12:41:16.283984Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<ArrowStringArray>\n",
       "[nan, 'NEUJAHR26', 'VALENTINS26', 'OSTERKORB26', 'MAIDUFT26']\n",
       "Length: 5, dtype: str"
      ]
     },
     "execution_count": 16,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "orders['code'].unique()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "e68deb93-59fc-41d0-8792-cc7de7814df9",
   "metadata": {},
   "outputs": [],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "id": "c50dd559-c313-4194-8ba4-0abe032c2ada",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:43:40.792438Z",
     "iopub.status.busy": "2026-06-10T12:43:40.792084Z",
     "iopub.status.idle": "2026-06-10T12:43:40.798537Z",
     "shell.execute_reply": "2026-06-10T12:43:40.797600Z",
     "shell.execute_reply.started": "2026-06-10T12:43:40.792401Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(72, np.float64(16369.220000000001))"
      ]
     },
     "execution_count": 18,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "kampagne(orders, 'NEUJAHR26')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "id": "acfa7b57-3900-43bf-bc95-048822b73fcb",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:48:30.075288Z",
     "iopub.status.busy": "2026-06-10T12:48:30.074936Z",
     "iopub.status.idle": "2026-06-10T12:48:30.081787Z",
     "shell.execute_reply": "2026-06-10T12:48:30.081142Z",
     "shell.execute_reply.started": "2026-06-10T12:48:30.075249Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(77, np.float64(14910.539999999999))"
      ]
     },
     "execution_count": 26,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "kampagne(orders, 'OSTERKORB26')"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "0dbaf5ae-71c9-4f19-becc-b3e0f46da314",
   "metadata": {},
   "source": [
    "## Aufgabe\n",
    "\n",
    "Wieviele Bestellungen und Umsatz haben wir je Kampagne gemacht?"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "id": "7a26eb61-9f5f-4f08-9839-13991d5b8422",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:45:21.092102Z",
     "iopub.status.busy": "2026-06-10T12:45:21.091772Z",
     "iopub.status.idle": "2026-06-10T12:45:21.105519Z",
     "shell.execute_reply": "2026-06-10T12:45:21.104517Z",
     "shell.execute_reply.started": "2026-06-10T12:45:21.092071Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bestellnr</th>\n",
       "      <th>bestelldatum</th>\n",
       "      <th>kundennr</th>\n",
       "      <th>anzahl_pakete</th>\n",
       "      <th>bestellwert</th>\n",
       "      <th>code</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>8001</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1238</td>\n",
       "      <td>3</td>\n",
       "      <td>98.62</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>8002</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1079</td>\n",
       "      <td>3</td>\n",
       "      <td>137.41</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>8003</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1041</td>\n",
       "      <td>1</td>\n",
       "      <td>103.59</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>8004</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1297</td>\n",
       "      <td>3</td>\n",
       "      <td>98.92</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>8005</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1081</td>\n",
       "      <td>2</td>\n",
       "      <td>79.31</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   bestellnr bestelldatum  kundennr  anzahl_pakete  bestellwert code\n",
       "0       8001   2026-01-01      1238              3        98.62  NaN\n",
       "1       8002   2026-01-01      1079              3       137.41  NaN\n",
       "2       8003   2026-01-01      1041              1       103.59  NaN\n",
       "3       8004   2026-01-01      1297              3        98.92  NaN\n",
       "4       8005   2026-01-01      1081              2        79.31  NaN"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "orders.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "id": "bc9870e4-f98a-443c-a446-fa0adc0eed2b",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:46:24.823121Z",
     "iopub.status.busy": "2026-06-10T12:46:24.822796Z",
     "iopub.status.idle": "2026-06-10T12:46:24.829248Z",
     "shell.execute_reply": "2026-06-10T12:46:24.828471Z",
     "shell.execute_reply.started": "2026-06-10T12:46:24.823089Z"
    }
   },
   "outputs": [],
   "source": [
    "codeBestellwert = orders[ [ 'bestellwert', 'code' ]]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "id": "9455270f-5b23-4632-9c72-23ccf2cff5f5",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:46:33.166197Z",
     "iopub.status.busy": "2026-06-10T12:46:33.165871Z",
     "iopub.status.idle": "2026-06-10T12:46:33.176787Z",
     "shell.execute_reply": "2026-06-10T12:46:33.175924Z",
     "shell.execute_reply.started": "2026-06-10T12:46:33.166167Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bestellwert</th>\n",
       "      <th>code</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>98.62</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>137.41</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>103.59</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>98.92</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>79.31</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   bestellwert code\n",
       "0        98.62  NaN\n",
       "1       137.41  NaN\n",
       "2       103.59  NaN\n",
       "3        98.92  NaN\n",
       "4        79.31  NaN"
      ]
     },
     "execution_count": 23,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "codeBestellwert.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "id": "19df155f-ecee-40b0-be4d-9706ba86667d",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:47:13.283739Z",
     "iopub.status.busy": "2026-06-10T12:47:13.283424Z",
     "iopub.status.idle": "2026-06-10T12:47:13.295411Z",
     "shell.execute_reply": "2026-06-10T12:47:13.294436Z",
     "shell.execute_reply.started": "2026-06-10T12:47:13.283707Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bestellwert</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>code</th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>MAIDUFT26</th>\n",
       "      <td>70</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>NEUJAHR26</th>\n",
       "      <td>72</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>OSTERKORB26</th>\n",
       "      <td>77</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>VALENTINS26</th>\n",
       "      <td>48</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "             bestellwert\n",
       "code                    \n",
       "MAIDUFT26             70\n",
       "NEUJAHR26             72\n",
       "OSTERKORB26           77\n",
       "VALENTINS26           48"
      ]
     },
     "execution_count": 24,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "codeBestellwert.groupby('code').count()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "id": "06c579fc-494f-44de-8cff-99459e734606",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:47:40.402162Z",
     "iopub.status.busy": "2026-06-10T12:47:40.401855Z",
     "iopub.status.idle": "2026-06-10T12:47:40.414701Z",
     "shell.execute_reply": "2026-06-10T12:47:40.413714Z",
     "shell.execute_reply.started": "2026-06-10T12:47:40.402126Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bestellwert</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>code</th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>MAIDUFT26</th>\n",
       "      <td>15517.88</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>NEUJAHR26</th>\n",
       "      <td>16369.22</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>OSTERKORB26</th>\n",
       "      <td>14910.54</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>VALENTINS26</th>\n",
       "      <td>8310.88</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "             bestellwert\n",
       "code                    \n",
       "MAIDUFT26       15517.88\n",
       "NEUJAHR26       16369.22\n",
       "OSTERKORB26     14910.54\n",
       "VALENTINS26      8310.88"
      ]
     },
     "execution_count": 25,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "codeBestellwert.groupby('code').sum()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "id": "d76be877-5199-429b-b327-cb9131480468",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:51:11.734447Z",
     "iopub.status.busy": "2026-06-10T12:51:11.734073Z",
     "iopub.status.idle": "2026-06-10T12:51:11.747508Z",
     "shell.execute_reply": "2026-06-10T12:51:11.746684Z",
     "shell.execute_reply.started": "2026-06-10T12:51:11.734416Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bestellnr</th>\n",
       "      <th>bestelldatum</th>\n",
       "      <th>kundennr</th>\n",
       "      <th>anzahl_pakete</th>\n",
       "      <th>bestellwert</th>\n",
       "      <th>code</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>8001</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1238</td>\n",
       "      <td>3</td>\n",
       "      <td>98.62</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>8002</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1079</td>\n",
       "      <td>3</td>\n",
       "      <td>137.41</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>8003</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1041</td>\n",
       "      <td>1</td>\n",
       "      <td>103.59</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>8004</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1297</td>\n",
       "      <td>3</td>\n",
       "      <td>98.92</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>8005</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1081</td>\n",
       "      <td>2</td>\n",
       "      <td>79.31</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   bestellnr bestelldatum  kundennr  anzahl_pakete  bestellwert code\n",
       "0       8001   2026-01-01      1238              3        98.62  NaN\n",
       "1       8002   2026-01-01      1079              3       137.41  NaN\n",
       "2       8003   2026-01-01      1041              1       103.59  NaN\n",
       "3       8004   2026-01-01      1297              3        98.92  NaN\n",
       "4       8005   2026-01-01      1081              2        79.31  NaN"
      ]
     },
     "execution_count": 30,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "orders.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "id": "270c0662-3252-48f4-915c-7d923b333b12",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:51:43.420584Z",
     "iopub.status.busy": "2026-06-10T12:51:43.420270Z",
     "iopub.status.idle": "2026-06-10T12:51:43.427599Z",
     "shell.execute_reply": "2026-06-10T12:51:43.426686Z",
     "shell.execute_reply.started": "2026-06-10T12:51:43.420553Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "bestellnr          int64\n",
       "bestelldatum         str\n",
       "kundennr           int64\n",
       "anzahl_pakete      int64\n",
       "bestellwert      float64\n",
       "code                 str\n",
       "dtype: object"
      ]
     },
     "execution_count": 31,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "orders.dtypes"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "id": "062164c8-c07a-481d-87bb-a79a364c5bab",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:52:10.492777Z",
     "iopub.status.busy": "2026-06-10T12:52:10.492474Z",
     "iopub.status.idle": "2026-06-10T12:52:10.502883Z",
     "shell.execute_reply": "2026-06-10T12:52:10.501758Z",
     "shell.execute_reply.started": "2026-06-10T12:52:10.492748Z"
    }
   },
   "outputs": [],
   "source": [
    "orders['datum'] = pd.to_datetime(orders['bestelldatum'])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "id": "2448d407-4169-41f7-8175-de7784b4215d",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:52:13.620558Z",
     "iopub.status.busy": "2026-06-10T12:52:13.620256Z",
     "iopub.status.idle": "2026-06-10T12:52:13.634897Z",
     "shell.execute_reply": "2026-06-10T12:52:13.633859Z",
     "shell.execute_reply.started": "2026-06-10T12:52:13.620527Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bestellnr</th>\n",
       "      <th>bestelldatum</th>\n",
       "      <th>kundennr</th>\n",
       "      <th>anzahl_pakete</th>\n",
       "      <th>bestellwert</th>\n",
       "      <th>code</th>\n",
       "      <th>datum</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>8001</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1238</td>\n",
       "      <td>3</td>\n",
       "      <td>98.62</td>\n",
       "      <td>NaN</td>\n",
       "      <td>2026-01-01</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>8002</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1079</td>\n",
       "      <td>3</td>\n",
       "      <td>137.41</td>\n",
       "      <td>NaN</td>\n",
       "      <td>2026-01-01</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>8003</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1041</td>\n",
       "      <td>1</td>\n",
       "      <td>103.59</td>\n",
       "      <td>NaN</td>\n",
       "      <td>2026-01-01</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>8004</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1297</td>\n",
       "      <td>3</td>\n",
       "      <td>98.92</td>\n",
       "      <td>NaN</td>\n",
       "      <td>2026-01-01</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>8005</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1081</td>\n",
       "      <td>2</td>\n",
       "      <td>79.31</td>\n",
       "      <td>NaN</td>\n",
       "      <td>2026-01-01</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   bestellnr bestelldatum  kundennr  anzahl_pakete  bestellwert code  \\\n",
       "0       8001   2026-01-01      1238              3        98.62  NaN   \n",
       "1       8002   2026-01-01      1079              3       137.41  NaN   \n",
       "2       8003   2026-01-01      1041              1       103.59  NaN   \n",
       "3       8004   2026-01-01      1297              3        98.92  NaN   \n",
       "4       8005   2026-01-01      1081              2        79.31  NaN   \n",
       "\n",
       "       datum  \n",
       "0 2026-01-01  \n",
       "1 2026-01-01  \n",
       "2 2026-01-01  \n",
       "3 2026-01-01  \n",
       "4 2026-01-01  "
      ]
     },
     "execution_count": 33,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "orders.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "id": "301894ee-9d53-4f3d-ab29-80d42430728e",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:52:35.753889Z",
     "iopub.status.busy": "2026-06-10T12:52:35.753730Z",
     "iopub.status.idle": "2026-06-10T12:52:35.757076Z",
     "shell.execute_reply": "2026-06-10T12:52:35.756662Z",
     "shell.execute_reply.started": "2026-06-10T12:52:35.753875Z"
    }
   },
   "outputs": [],
   "source": [
    "orders['Monat'] = orders['datum'].dt.month"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "id": "19539f4f-edec-477f-aaa4-d9fdb7a5aa87",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:52:37.937719Z",
     "iopub.status.busy": "2026-06-10T12:52:37.937436Z",
     "iopub.status.idle": "2026-06-10T12:52:37.952706Z",
     "shell.execute_reply": "2026-06-10T12:52:37.951353Z",
     "shell.execute_reply.started": "2026-06-10T12:52:37.937690Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bestellnr</th>\n",
       "      <th>bestelldatum</th>\n",
       "      <th>kundennr</th>\n",
       "      <th>anzahl_pakete</th>\n",
       "      <th>bestellwert</th>\n",
       "      <th>code</th>\n",
       "      <th>datum</th>\n",
       "      <th>Monat</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>8001</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1238</td>\n",
       "      <td>3</td>\n",
       "      <td>98.62</td>\n",
       "      <td>NaN</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>8002</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1079</td>\n",
       "      <td>3</td>\n",
       "      <td>137.41</td>\n",
       "      <td>NaN</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>8003</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1041</td>\n",
       "      <td>1</td>\n",
       "      <td>103.59</td>\n",
       "      <td>NaN</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>8004</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1297</td>\n",
       "      <td>3</td>\n",
       "      <td>98.92</td>\n",
       "      <td>NaN</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>8005</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1081</td>\n",
       "      <td>2</td>\n",
       "      <td>79.31</td>\n",
       "      <td>NaN</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   bestellnr bestelldatum  kundennr  anzahl_pakete  bestellwert code  \\\n",
       "0       8001   2026-01-01      1238              3        98.62  NaN   \n",
       "1       8002   2026-01-01      1079              3       137.41  NaN   \n",
       "2       8003   2026-01-01      1041              1       103.59  NaN   \n",
       "3       8004   2026-01-01      1297              3        98.92  NaN   \n",
       "4       8005   2026-01-01      1081              2        79.31  NaN   \n",
       "\n",
       "       datum  Monat  \n",
       "0 2026-01-01      1  \n",
       "1 2026-01-01      1  \n",
       "2 2026-01-01      1  \n",
       "3 2026-01-01      1  \n",
       "4 2026-01-01      1  "
      ]
     },
     "execution_count": 36,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "orders.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "id": "bdad02d5-dc44-4f45-b2fa-8b3c5e8f18ac",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:54:32.001538Z",
     "iopub.status.busy": "2026-06-10T12:54:32.001239Z",
     "iopub.status.idle": "2026-06-10T12:54:32.010653Z",
     "shell.execute_reply": "2026-06-10T12:54:32.009535Z",
     "shell.execute_reply.started": "2026-06-10T12:54:32.001507Z"
    }
   },
   "outputs": [],
   "source": [
    "monatBestellwert = orders[['Monat','bestellwert']]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "id": "2d29fbf5-4dca-4acd-a504-64bacc1a1215",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:54:36.455668Z",
     "iopub.status.busy": "2026-06-10T12:54:36.455323Z",
     "iopub.status.idle": "2026-06-10T12:54:36.466104Z",
     "shell.execute_reply": "2026-06-10T12:54:36.464903Z",
     "shell.execute_reply.started": "2026-06-10T12:54:36.455636Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>Monat</th>\n",
       "      <th>bestellwert</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1</td>\n",
       "      <td>98.62</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>1</td>\n",
       "      <td>137.41</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>1</td>\n",
       "      <td>103.59</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>1</td>\n",
       "      <td>98.92</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>1</td>\n",
       "      <td>79.31</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   Monat  bestellwert\n",
       "0      1        98.62\n",
       "1      1       137.41\n",
       "2      1       103.59\n",
       "3      1        98.92\n",
       "4      1        79.31"
      ]
     },
     "execution_count": 38,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "monatBestellwert.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "id": "2593f0da-16dc-4935-a246-f36c9ed93d0b",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:55:04.917934Z",
     "iopub.status.busy": "2026-06-10T12:55:04.917609Z",
     "iopub.status.idle": "2026-06-10T12:55:04.924510Z",
     "shell.execute_reply": "2026-06-10T12:55:04.923566Z",
     "shell.execute_reply.started": "2026-06-10T12:55:04.917901Z"
    }
   },
   "outputs": [],
   "source": [
    "umsatzNachMonat = monatBestellwert.groupby('Monat').sum()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 41,
   "id": "f1c7b95b-34d2-44fb-8d03-c18339040586",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:55:08.922476Z",
     "iopub.status.busy": "2026-06-10T12:55:08.922118Z",
     "iopub.status.idle": "2026-06-10T12:55:08.930601Z",
     "shell.execute_reply": "2026-06-10T12:55:08.929779Z",
     "shell.execute_reply.started": "2026-06-10T12:55:08.922442Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bestellwert</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>Monat</th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>93432.69</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>51673.57</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>84663.14</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>72079.03</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>81921.80</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>28651.16</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "       bestellwert\n",
       "Monat             \n",
       "1         93432.69\n",
       "2         51673.57\n",
       "3         84663.14\n",
       "4         72079.03\n",
       "5         81921.80\n",
       "6         28651.16"
      ]
     },
     "execution_count": 41,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "umsatzNachMonat"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "id": "301fc044-dd04-42d2-94be-84be353849bd",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T12:55:15.549594Z",
     "iopub.status.busy": "2026-06-10T12:55:15.549286Z",
     "iopub.status.idle": "2026-06-10T12:55:15.956597Z",
     "shell.execute_reply": "2026-06-10T12:55:15.955949Z",
     "shell.execute_reply.started": "2026-06-10T12:55:15.549563Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Axes: xlabel='Monat'>"
      ]
     },
     "execution_count": 42,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "umsatzNachMonat.plot()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "id": "80a30b5e-a51f-4589-b274-d92a37e13bbd",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T13:11:48.230092Z",
     "iopub.status.busy": "2026-06-10T13:11:48.229904Z",
     "iopub.status.idle": "2026-06-10T13:11:48.237372Z",
     "shell.execute_reply": "2026-06-10T13:11:48.236812Z",
     "shell.execute_reply.started": "2026-06-10T13:11:48.230075Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bestellnr</th>\n",
       "      <th>bestelldatum</th>\n",
       "      <th>kundennr</th>\n",
       "      <th>anzahl_pakete</th>\n",
       "      <th>bestellwert</th>\n",
       "      <th>code</th>\n",
       "      <th>datum</th>\n",
       "      <th>Monat</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>8001</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1238</td>\n",
       "      <td>3</td>\n",
       "      <td>98.62</td>\n",
       "      <td>NaN</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>8002</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1079</td>\n",
       "      <td>3</td>\n",
       "      <td>137.41</td>\n",
       "      <td>NaN</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>8003</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1041</td>\n",
       "      <td>1</td>\n",
       "      <td>103.59</td>\n",
       "      <td>NaN</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>8004</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1297</td>\n",
       "      <td>3</td>\n",
       "      <td>98.92</td>\n",
       "      <td>NaN</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>8005</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1081</td>\n",
       "      <td>2</td>\n",
       "      <td>79.31</td>\n",
       "      <td>NaN</td>\n",
       "      <td>2026-01-01</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   bestellnr bestelldatum  kundennr  anzahl_pakete  bestellwert code  \\\n",
       "0       8001   2026-01-01      1238              3        98.62  NaN   \n",
       "1       8002   2026-01-01      1079              3       137.41  NaN   \n",
       "2       8003   2026-01-01      1041              1       103.59  NaN   \n",
       "3       8004   2026-01-01      1297              3        98.92  NaN   \n",
       "4       8005   2026-01-01      1081              2        79.31  NaN   \n",
       "\n",
       "       datum  Monat  \n",
       "0 2026-01-01      1  \n",
       "1 2026-01-01      1  \n",
       "2 2026-01-01      1  \n",
       "3 2026-01-01      1  \n",
       "4 2026-01-01      1  "
      ]
     },
     "execution_count": 43,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "orders.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "id": "ba8b546d-47cc-482c-a9a1-971b4609509f",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T13:14:58.076046Z",
     "iopub.status.busy": "2026-06-10T13:14:58.075694Z",
     "iopub.status.idle": "2026-06-10T13:14:58.082690Z",
     "shell.execute_reply": "2026-06-10T13:14:58.081523Z",
     "shell.execute_reply.started": "2026-06-10T13:14:58.076013Z"
    }
   },
   "outputs": [],
   "source": [
    "kundeBestellwert = orders[['kundennr','bestellwert']]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 48,
   "id": "250945b1-7408-4da6-a382-52fa6f3bb0e2",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T13:15:59.161969Z",
     "iopub.status.busy": "2026-06-10T13:15:59.161779Z",
     "iopub.status.idle": "2026-06-10T13:15:59.165611Z",
     "shell.execute_reply": "2026-06-10T13:15:59.165136Z",
     "shell.execute_reply.started": "2026-06-10T13:15:59.161953Z"
    }
   },
   "outputs": [],
   "source": [
    "bestellumsatzProKunde = kundeBestellwert.groupby('kundennr').sum()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 49,
   "id": "28f5bc98-00dc-4e12-9c44-c9d6f2da70a9",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T13:16:08.131259Z",
     "iopub.status.busy": "2026-06-10T13:16:08.130888Z",
     "iopub.status.idle": "2026-06-10T13:16:08.140580Z",
     "shell.execute_reply": "2026-06-10T13:16:08.139569Z",
     "shell.execute_reply.started": "2026-06-10T13:16:08.131226Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bestellwert</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>kundennr</th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>1001</th>\n",
       "      <td>59.49</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1002</th>\n",
       "      <td>454.83</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1003</th>\n",
       "      <td>45.08</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1004</th>\n",
       "      <td>615.31</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1005</th>\n",
       "      <td>874.95</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "          bestellwert\n",
       "kundennr             \n",
       "1001            59.49\n",
       "1002           454.83\n",
       "1003            45.08\n",
       "1004           615.31\n",
       "1005           874.95"
      ]
     },
     "execution_count": 49,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "bestellumsatzProKunde.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 50,
   "id": "f377ca2f-b780-4279-bd1a-4693447b345f",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T13:18:02.574198Z",
     "iopub.status.busy": "2026-06-10T13:18:02.573884Z",
     "iopub.status.idle": "2026-06-10T13:18:02.580253Z",
     "shell.execute_reply": "2026-06-10T13:18:02.579156Z",
     "shell.execute_reply.started": "2026-06-10T13:18:02.574169Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "np.float64(752.5937773722628)"
      ]
     },
     "execution_count": 50,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "bestellumsatzProKunde['bestellwert'].mean()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 52,
   "id": "f3ebf38a-31f4-46ef-bd40-0843e4ded3d4",
   "metadata": {
    "execution": {
     "iopub.execute_input": "2026-06-10T13:19:22.372053Z",
     "iopub.status.busy": "2026-06-10T13:19:22.371728Z",
     "iopub.status.idle": "2026-06-10T13:19:22.385517Z",
     "shell.execute_reply": "2026-06-10T13:19:22.384667Z",
     "shell.execute_reply.started": "2026-06-10T13:19:22.372021Z"
    }
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>bestellwert</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>count</th>\n",
       "      <td>548.000000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>mean</th>\n",
       "      <td>752.593777</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>std</th>\n",
       "      <td>715.119260</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>min</th>\n",
       "      <td>37.290000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25%</th>\n",
       "      <td>242.035000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>50%</th>\n",
       "      <td>497.870000</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>75%</th>\n",
       "      <td>1076.972500</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>max</th>\n",
       "      <td>5488.740000</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "       bestellwert\n",
       "count   548.000000\n",
       "mean    752.593777\n",
       "std     715.119260\n",
       "min      37.290000\n",
       "25%     242.035000\n",
       "50%     497.870000\n",
       "75%    1076.972500\n",
       "max    5488.740000"
      ]
     },
     "execution_count": 52,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "bestellumsatzProKunde.describe()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "50fd1aef-e9ee-41c5-a7c0-415aa4386cf0",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.13.13"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
