{"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"name":"python","version":"3.12.13","mimetype":"text/x-python","codemirror_mode":{"name":"ipython","version":3},"pygments_lexer":"ipython3","nbconvert_exporter":"python","file_extension":".py"},"kaggle":{"accelerator":"none","dataSources":[],"dockerImageVersionId":28755,"isInternetEnabled":false,"language":"python","sourceType":"notebook","isGpuEnabled":false}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"code","source":"# This Python 3 environment comes with many helpful analytics libraries installed\n# It is defined by the kaggle/python Docker image: https://github.com/kaggle/docker-python\n# For example, here's several helpful packages to load\n\nimport numpy as np # linear algebra\nimport pandas as pd # data processing, CSV file I/O (e.g. pd.read_csv)\n\n# Input data files are available in the read-only \"../input/\" directory\n# For example, running this (by clicking run or pressing Shift+Enter) will list all files under the input directory\n\nimport os\nfor dirname, _, filenames in os.walk('/kaggle/input'):\n    for filename in filenames:\n        print(os.path.join(dirname, filename))\n\n# You can write up to 20GB to the current directory (/kaggle/working/) that gets preserved as output when you create a version using \"Save & Run All\" \n# You can also write temporary files to /kaggle/temp/, but they won't be saved outside of the current session\n\n# Use the kagglehub client library to attach Kaggle resources like competitions, datasets, and models to your session\n# Learn more about kagglehub: https://github.com/Kaggle/kagglehub/blob/main/README.md\n\nimport kagglehub\n# kagglehub.dataset_download('<owner>/<dataset-slug>')","metadata":{"_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","trusted":true,"execution":{"iopub.status.busy":"2026-07-03T08:20:36.559748Z","iopub.execute_input":"2026-07-03T08:20:36.560061Z","iopub.status.idle":"2026-07-03T08:20:36.567762Z","shell.execute_reply.started":"2026-07-03T08:20:36.560034Z","shell.execute_reply":"2026-07-03T08:20:36.566994Z"}},"outputs":[{"name":"stdout","text":"/kaggle/input/competitions/Store-Sales-Forecasting/oil.csv\n/kaggle/input/competitions/Store-Sales-Forecasting/sample_submission.csv\n/kaggle/input/competitions/Store-Sales-Forecasting/holidays_events.csv\n/kaggle/input/competitions/Store-Sales-Forecasting/stores.csv\n/kaggle/input/competitions/Store-Sales-Forecasting/train.csv\n/kaggle/input/competitions/Store-Sales-Forecasting/test.csv\n/kaggle/input/competitions/Store-Sales-Forecasting/transactions.csv\n","output_type":"stream"}],"execution_count":4},{"cell_type":"code","source":"import os\n\nfor dirname, _, filenames in os.walk('/kaggle/input'):\n    print(dirname)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-07-03T08:22:17.796203Z","iopub.execute_input":"2026-07-03T08:22:17.796534Z","iopub.status.idle":"2026-07-03T08:22:17.804084Z","shell.execute_reply.started":"2026-07-03T08:22:17.796507Z","shell.execute_reply":"2026-07-03T08:22:17.803035Z"}},"outputs":[{"name":"stdout","text":"/kaggle/input\n/kaggle/input/competitions\n/kaggle/input/competitions/Store-Sales-Forecasting\n","output_type":"stream"}],"execution_count":5},{"cell_type":"code","source":"for dirname, _, filenames in os.walk('/kaggle/input'):\n    for filename in filenames:\n        print(os.path.join(dirname, filename))","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-07-03T08:22:40.087952Z","iopub.execute_input":"2026-07-03T08:22:40.088295Z","iopub.status.idle":"2026-07-03T08:22:40.097628Z","shell.execute_reply.started":"2026-07-03T08:22:40.088266Z","shell.execute_reply":"2026-07-03T08:22:40.096508Z"}},"outputs":[{"name":"stdout","text":"/kaggle/input/competitions/Store-Sales-Forecasting/oil.csv\n/kaggle/input/competitions/Store-Sales-Forecasting/sample_submission.csv\n/kaggle/input/competitions/Store-Sales-Forecasting/holidays_events.csv\n/kaggle/input/competitions/Store-Sales-Forecasting/stores.csv\n/kaggle/input/competitions/Store-Sales-Forecasting/train.csv\n/kaggle/input/competitions/Store-Sales-Forecasting/test.csv\n/kaggle/input/competitions/Store-Sales-Forecasting/transactions.csv\n","output_type":"stream"}],"execution_count":6},{"cell_type":"code","source":"import pandas as pd\nimport matplotlib.pyplot as plt\n\n# データ読み込み\npath = \"/kaggle/input/competitions/Store-Sales-Forecasting/\"\n\ntrain = pd.read_csv(path + \"train.csv\")\nstores = pd.read_csv(path + \"stores.csv\")\ntransactions = pd.read_csv(path + \"transactions.csv\")\nholidays = pd.read_csv(path + \"holidays_events.csv\")\noil = pd.read_csv(path + \"oil.csv\")\n\n# 日付型に変換\ntrain[\"date\"] = pd.to_datetime(train[\"date\"])\ntransactions[\"date\"] = pd.to_datetime(transactions[\"date\"])\nholidays[\"date\"] = pd.to_datetime(holidays[\"date\"])\noil[\"date\"] = pd.to_datetime(oil[\"date\"])\n\n# 確認\nprint(train.shape)\ntrain.head()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-07-03T08:23:59.09986Z","iopub.execute_input":"2026-07-03T08:23:59.100187Z","iopub.status.idle":"2026-07-03T08:24:02.821232Z","shell.execute_reply.started":"2026-07-03T08:23:59.10016Z","shell.execute_reply":"2026-07-03T08:24:02.820261Z"}},"outputs":[{"name":"stdout","text":"(3000888, 6)\n","output_type":"stream"},{"execution_count":7,"output_type":"execute_result","data":{"text/plain":"   id       date  store_nbr      family  sales  onpromotion\n0   0 2013-01-01          1  AUTOMOTIVE    0.0            0\n1   1 2013-01-01          1   BABY CARE    0.0            0\n2   2 2013-01-01          1      BEAUTY    0.0            0\n3   3 2013-01-01          1   BEVERAGES    0.0            0\n4   4 2013-01-01          1       BOOKS    0.0            0","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>id</th>\n      <th>date</th>\n      <th>store_nbr</th>\n      <th>family</th>\n      <th>sales</th>\n      <th>onpromotion</th>\n    </tr>\n  </thead>\n  <tbody>\n    <tr>\n      <th>0</th>\n      <td>0</td>\n      <td>2013-01-01</td>\n      <td>1</td>\n      <td>AUTOMOTIVE</td>\n      <td>0.0</td>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>1</th>\n      <td>1</td>\n      <td>2013-01-01</td>\n      <td>1</td>\n      <td>BABY CARE</td>\n      <td>0.0</td>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>2</th>\n      <td>2</td>\n      <td>2013-01-01</td>\n      <td>1</td>\n      <td>BEAUTY</td>\n      <td>0.0</td>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>3</th>\n      <td>3</td>\n      <td>2013-01-01</td>\n      <td>1</td>\n      <td>BEVERAGES</td>\n      <td>0.0</td>\n      <td>0</td>\n    </tr>\n    <tr>\n      <th>4</th>\n      <td>4</td>\n      <td>2013-01-01</td>\n      <td>1</td>\n      <td>BOOKS</td>\n      <td>0.0</td>\n      <td>0</td>\n    </tr>\n  </tbody>\n</table>\n</div>"},"metadata":{}}],"execution_count":7},{"cell_type":"code","source":"# 曜日を作る\ntrain[\"weekday\"] = train[\"date\"].dt.day_name()\n\n# 曜日順を指定\nweekday_order = [\"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\", \"Sunday\"]\n\n# 曜日ごとの平均売上\nweekday_sales = train.groupby(\"weekday\")[\"sales\"].mean().reindex(weekday_order)\n\nweekday_sales","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-07-03T08:24:23.652794Z","iopub.execute_input":"2026-07-03T08:24:23.653106Z","iopub.status.idle":"2026-07-03T08:24:24.653656Z","shell.execute_reply.started":"2026-07-03T08:24:23.653081Z","shell.execute_reply":"2026-07-03T08:24:24.652844Z"}},"outputs":[{"execution_count":8,"output_type":"execute_result","data":{"text/plain":"weekday\nMonday       346.544732\nTuesday      319.823843\nWednesday    332.909401\nThursday     283.540517\nFriday       325.238138\nSaturday     433.336472\nSunday       463.085366\nName: sales, dtype: float64"},"metadata":{}}],"execution_count":8},{"cell_type":"code","source":"plt.figure(figsize=(10,5))\nweekday_sales.plot(kind=\"bar\")\nplt.title(\"Average Sales by Weekday\")\nplt.xlabel(\"Weekday\")\nplt.ylabel(\"Average Sales\")\nplt.xticks(rotation=45)\nplt.show()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-07-03T08:24:41.125107Z","iopub.execute_input":"2026-07-03T08:24:41.125432Z","iopub.status.idle":"2026-07-03T08:24:41.44194Z","shell.execute_reply.started":"2026-07-03T08:24:41.125407Z","shell.execute_reply":"2026-07-03T08:24:41.44069Z"}},"outputs":[{"output_type":"display_data","data":{"text/plain":"<Figure size 1000x500 with 1 Axes>","image/png":"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EOC0T5gwwatfrly5FBcXp8OHDyt//vxO+1/vgZUhQwalSpVKsbGxtxUEbpe/v7+KFy+uQ4cO6ezZs8qcObNmz56t1q1b67PPPnP6Xbly5aajv10vb968kqTAwMDbqjFLlizq1KmTOnXqpJCQED322GP68MMPbytIHTp0yCtI/Pbbb4qLi3MG+pCundb24osvauLEifr44481b948tWvXTr6+vv/4+NK10/vGjx+vn376SbGxsapQoYIzrUKFCpo+fbpWrVrl9I2XN29ehYeH/+N7kDdvXi1btkwVK1a8aRj/q/Tp02v27NmqVKmSatasqXXr1ilr1qzO9Fy5cmn58uUKDw93AqskHThwwOtxLly4oOXLl6tfv356//33nfZDhw7d9HmbN2+u7t27a/r06bp8+bL8/f29ToUFgHuFa6QA4A66fPmyvvvuOz355JN69tlnb/jp0qWLLl26pB9++EGS5OPjo2effVY//vijJk+erKtXr96wUdisWTMdP35cY8eOvenzRURE/GNdvr6+8ng8zvVZknTkyJEbRvyLH4Z75MiRXu3Dhw+/4fGaNm2qOXPm3HCjWEk6c+bM39Zz6NAhBQcH39B+8eJFbdy4UWnSpHGOgPj6+jrXFV1fz/Wv5WZKly6tvHnz6tNPP1V4ePgta4yNjVVoaKjXtIwZMypr1qw3DC9/K38NzfHv119DWMuWLXXhwgV16NBB4eHhrq7rqVSpkmJjY/Xpp58qf/78XkeIKlSooPDwcI0cOVI+Pj5eIatZs2bauHGjlixZcsNjXrx4UVevXnX6xcbGasCAATf0u3r16k2Da/bs2bVs2TJdvnxZtWvX9hquvEGDBrp69apGjRrltMXGxt70f0nSDcv4+tEEr5c+fXrVr19fU6ZM0dSpU1WvXj2lT5/+pn0B4G7iiBQA3EE//PCDLl26pMaNG990erly5Zyb88YHpueff17Dhw9X3759VaxYsRtuotqyZUvNmjVLr732mlauXKmKFSsqNjZWv/76q2bNmqUlS5Y4AwvcSsOGDfX555+rXr16evHFFxUSEqIRI0YoX7582r17t9OvdOnSatq0qYYOHapz5845w58fPHhQkvcpa4MGDdLKlSv1xBNPqF27dipcuLDOnz+v7du3a9myZTp//vwt69m1a5defPFF1a9fX5UrV1batGl1/PhxffPNNzpx4oSGDh3qbGA/+eSTmjx5soKCglS4cGFt3LhRy5Yt87rX1M34+Pjo66+/Vv369VWkSBG9/PLLypYtm44fP66VK1cqMDBQP/74oy5duqTs2bPr2WefVYkSJZQyZUotW7ZMW7du9ToK9ncOHz6sxo0bq169etq4caOmTJmiF1988YZ7R5UqVUpFixZ1BhC5naHV48UfZdq4caPatGnjNe3RRx9V+vTptXHjRhUrVkypU6d2pvXs2VM//PCDnnzySbVp00alS5dWRESE9uzZo9mzZ+vIkSNKnz69qlatqg4dOmjgwIHauXOn6tSpI39/fx06dEjffvuthg0bpmefffaGuvLly6effvpJ1apVU926dbVixQoFBgaqUaNGqlixonr16qUjR46ocOHC+u67724IrYGBgapSpYoGDx6smJgYZcuWTT/99JMOHz58y/eiVatWTi03C34AcE8k9EVaAPAgadSokSVNmtQiIiJu2adNmzbm7+/vDBseFxdnOXLkMEn2wQcf3HSe6Oho+/jjj61IkSIWEBBgadKksdKlS1u/fv0sNDTU6SfplsN4jxs3zvLnz28BAQFWsGBBmzBhgjNYwvUiIiKsc+fOljZtWkuZMqU9/fTTduDAAZNkgwYN8up7+vRp69y5s+XIkcP8/f0tc+bMVrNmTRszZszfvk+nT5+2QYMGWdWqVS1Llizm5+dnadKksRo1atjs2bO9+l64cMFefvllS58+vaVMmdLq1q1rv/76q+XKlctat27t9PvrYBPxduzYYU2aNLF06dJZQECA5cqVy5o1a2bLly83M7OoqCjr2bOnlShRwlKlSmUpUqSwEiVK2MiRI//2NZj932ATv/zyiz377LOWKlUqS5MmjXXp0sUuX75803kGDx5skuyjjz76x8f/q6xZs5qkm76/jRs3NknWsWPHG6ZdunTJevfubfny5bMkSZJY+vTprUKFCvbpp59adHS0V98xY8ZY6dKlLVmyZJYqVSorVqyYvf3223bixAmnz/XDn8fbvHmzpUqVyqpUqeIMZ37u3Dlr2bKlBQYGWlBQkLVs2dJ27Nhxw2ATx44ds2eeecZSp05tQUFB9txzz9mJEyduGHI/XlRUlKVJk8aCgoJu+T4DwN3mMfvLsXQAAP5i586dKlWqlKZMmeI1kAHcGzZsmLp166YjR44oZ86cCV3Ofenq1avK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YgUKFLAaNWp47WA6c+aM5cqVyzn969y5c/b888/bt99+6ywX1p/E5fr15dtvv7UOHTpYhgwZLEuWLF6nyr777ruWJEkSe+mll+yxxx6zwoUL852XAOI/A82uLa969epZ2bJlnQHL4uLibNCgQVaoUCHbvn27nT9/3ho3buycum724AxaxvDnD7Drh6FctGiRlixZolGjRqlevXr6+uuvlSFDBv3555+qXr26KleurMqVK2vOnDm6cOGCNm7cKI/Hw71pEtjHH3+sjz/+WN9++63MTL/99pu6dOmiV199VR9++KHSpk2rLVu2aPny5fL19VWPHj3k5+fHcrsPdOvWTQcPHtSVK1e0Y8cOJU2aVF9//bVq166ty5cv67///a9GjRqlLFmyKCgoSFu2bJG/vz9DNN9D7777rr766iv169dPERERmjx5smJjY/XBBx/oqaeeUmhoqIYPH64NGzYoe/bsGj16tPz9/Vn/7qLrv9eWLl2q/fv3q2vXrmrQoIG++uorZcuWTeHh4WrXrp2OHz+uZ555RgsXLlRkZKTWrl0rHx8f7uWViL377rsaM2aM+vfvL19fX33zzTe6fPmynn/+eb3zzjuSpH79+mn//v1KnTq1hg8fzjp3j13/HfThhx/q559/1pEjR7Rr1y49/vjjGjNmjEqWLKng4GBVrFjRWdfSpEmjrVu3yt/fPyHLv/MSNMbhnujatasVLlzYXn/9datZs6ZlzZrV6tat65zm99NPP1n+/PmtVKlSVqNGDWdPA3t3ElZsbKw1aNDAOec/3vfff28+Pj7WpUuXmw788aDs5XmQTZw40YKCgmz79u126tQpO336tDVo0MDSp0/vjC4WGhpq27ZtswULFjjLlFM1753Dhw/bI4884nXLgMuXL1ulSpUsb968Nm/ePGd5xF+jaMYyulfefvtty549u/Xr189efPFFy5Qpk1WuXNm5Zmrx4sX2/PPPW9GiRa1Ro0bO9xpHohKX67czjh07ZoUKFbLp06c7bX/++ae9+uqrVqBAAfviiy+c9vjrFc1Y5xLK8OHDLWXKlLZs2TI7cuSIjRs3zmrUqGGPP/64/fzzz2Z2bZTh8ePH28SJE53l9KAtL4LUA27dunWWJUsWr2F3x40bZ+XLl7e6des6566eOHHCzpw543XqEO6tvwbXyMhIK1eunHXt2tXMrgWk+OXSuXNn8/X1tdatW3OR9H1o4MCBVq1aNYuJifFa7rVr17ZcuXLZggULnGt04hGQ766/rn/Hjx+3PHnyOEMxx2+4RUREWPbs2a1ChQr2zTffeJ3iws6nu+P64efN/m+kvUWLFnm15c6d2ypVquR8r125csUuXLjA91oidX2oPXbsmIWGhlr+/PmdUzKvv31A7ty5LU+ePPbee+8lSK3wdvXqVXvppZesffv2Xu3z58+3kiVL2hNPPGG7du266XwPGo5tP+AuXbqky5cvK1u2bE5by5Yt1axZM61Zs0YdOnTQiRMnlCVLFqVPn14ej0dxcXHy8/NLwKofPnFxcc6h8n379ik6OlrJkiVTkyZNNGHCBG3ZskW+vr7OIfJMmTKpRo0a+uOPP5Q+ffqELB3/IC4u7oa2yMhIHTlyRH5+fvJ4PLpy5YokqWvXrgoODtazzz6r7du3e83DaSt3z/Xr38WLFyVdOw0lICBAP/74oyQpICBAMTExCggIUP78+bVr1y6tX7/e6zQVTrm886pXr66lS5d6tV2+fFmSVLBgQUnXTjUqUaKEJk+erG3btqlTp04KDg5WQECAUqdOzfdaIhX/ffbWW2+pZ8+eOnXqlLJly6YdO3YoIiJC0rVlmylTJj3xxBNKmTKlwsLCZFyRkuB8fX2VKlUqHTp0SFFRUU57w4YNVb9+fW3ZskWNGzfWr7/+esN8DxqC1APk+g+X+N+zZ8+u7Nmz6+eff3Y26Pz9/fXyyy8rR44cWr9+vT7++GOvx+Hc8Xvr+vP1+/btq+7du+vHH3+UmalJkyaqW7euXnnlFW3atEk+Pj6KjIzUli1b9Oabb2rNmjXOOf9IfK5ftkuWLNG2bdskSW3btpWZqX379pKkpEmTSpJSpEiht956S126dNETTzyRMEU/ZK5fRp999pl69Oih3377TcmSJdOnn36qadOm6b333pN07bPT4/EoZ86c+umnnzRq1KiELP2hULt2bdWqVUuSFBsbK0kqVKiQzEyzZs2S9H8BNm/evMqVK5fmzp2rjz76yOtx+F5LnPbv36+lS5eqS5cuevTRR/Xuu+9q4sSJ+uijj3T+/Hl5PB5FRUUpNjZWb731loYMGSKPx0OYuodutX1RvHhxHT9+XEuWLHF2BkrXdnDUr19f7du3V/78+e9VmQknwY6F4Y66/hB5dHS0c1pQZGSk1apVy8qVK+d1k93g4GBr0qSJzZw5k3PGE4levXpZ+vTpbfHixV6n6+3YscOef/558/Pzs9KlS1u+fPkYne8+cP1yeeedd6xw4cI2evRou3DhgkVGRtpXX31lBQoUsBdffNH+/PNP2717t9WrV8+6dOnizPcgngaRWPXo0cMyZcpkkydPtt9//93MzMLDw23EiBEWEBBgtWvXtnbt2lmFChWsYMGCzucmy+ju+Ov30ocffmhjx461S5cumdm10dtKly5t48aNc/qEhYVZ69atbefOnSyX+8BHH31krVu3ttatW3udIjtz5kxLkiSJ1a5d25555hkrX768FSlSxFmmbLPcO9e/13PnzrUZM2bYDz/84LQ9+eSTli9fPps8ebIdOXLELly4YE899ZS99957znfgg74uMmrfA2bgwIFavXq1YmNj1a5dOzVr1kyhoaGqXLmykiZNqtq1a6tYsWIaM2aMAgICtGDBAkYxSgQ2bNig1q1ba9q0aSpTpowiIiIUEhKiLVu2qFatWkqXLp3mzp2r3377TQEBAerUqROj890nBgwYoOHDh2vOnDkqV66ccyrY1atXNWfOHL333ns6ffq0goKClDFjRm3cuPHBG9UokZs5c6beeustzZs3T48//rgkKTo6WiEhIc4R/cGDB8vj8ShlypTO6Hx8bt4917+3cXFx6tatm7788ktNmjRJLVq00B9//KFBgwZp1apVqlq1qkqWLKlvv/1W4eHh2rJli3x8fPh8TGT+ur589NFH6tOnj4oUKaJVq1YpXbp0zohwW7Zs0dy5c3X06FGlS5dOn376KevcPWbXjc7Xs2dPjRkzRlmzZtXvv/+ujh07atiwYZKk559/Xvv379fRo0eVJUsWmZn27NkjPz+/h2OU2YRMcfjfXb+3YODAgZYhQwZ766237LnnnjOPx2ODBg0ys2sjgL322mtWrlw5K1KkiNWtW5dRjBKRLVu2WM6cOW3nzp32yy+/WPfu3S1v3ryWJUsWy5gx400HlHjQ9/I8CI4fP25ly5a1OXPmOH+vWrXKOnfubF999ZXTb+XKlbZ582ZG57tH/vqZ9+WXX1rlypXNzGzv3r326aefWsGCBS0oKMi5qetfj/yyjO6e69/rt956y15++WUzM+vSpYsFBATYpEmTzMzs6NGjNnbsWCtSpIhVqlTJnnzySb7X7gPBwcHO8hk1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HjzYYmNjLSwszDp27GiVKlVKwEpxvYMHD5rZtQ+pbt26OUMrjxw50ukTEhJidevWtU8++SShysS/EP/F880331jbtm1t9uzZljJlShs9erTT5/vvv7e33nrLLl686LQ9rKdBJIT4QT9KlSplHTt2dMLUokWLrHz58vbss8/a6tWrE7jKh9fBgwetXr161rBhQ6tUqZI99thjdvjwYWf6yZMn7bnnnrOCBQva/PnzE65Q/K1du3aZn5+fTZ482d555x1LnTq1HThwwMyuDVWfKVMmq1GjhnO9aFxcnHXu3Nn27NnDDosEcP2R3fHjxzuD7FwfpipVqmR58+Z1wlRMTIx999137AS8DkEqkVuyZIlz8a3ZtQtyCxcubBcvXnT+2SMjI619+/ZWqlQp58Mo/ugUEt7ChQstWbJkNnv2bDO7dnSiePHiljNnTtu/f7+dP3/ejh07ZvXr17cnnniCD6hE7lYBaMmSJZYiRQrzeDxeATkiIsLq1q1rr732GuvkPXKzZRQeHm6ffPKJlSlTxjp06OAVpipVqmTVq1e3HTt23ONKEe/gwYNWq1YtCwoK8hpsIH45HT9+3P7zn/+wwZ2InTx50gYMGGDJkiWzoKAgO3HihJn934iLR48etRw5ctgTTzxhrVq1surVq1uxYsWc9ZVle+8sWbLEBg8ebJs2bbKwsDDLmDGjPfbYY3b06FEz+78wdeHCBXvkkUesQoUKtn79eq/HYFvlGm4PnYitX79e9erV02effaZJkyZJklKkSKHLly8rOjpaHo9HMTExSpYsmd59913t2rVLa9askSQlT55cHo9HZpaQL+GhFBkZ6fV39uzZ9cILL6hHjx6aPXu2UqVKpblz58rX11dPPfWUihQpombNmuns2bNau3at/Pz8FBsbm0DV4++YmXNfk8mTJ+uzzz7TqFGjFBcXpzp16mjgwIGSpIiICK1atUqbNm3S008/rVOnTmn48OGsk/dI/DJat26d05YiRQp17NhRzz33nLZv364333xTMTExqlevnnr06KFHH31UxYsXT6iSH3r58+fX6NGjVa5cOU2YMMFZdv7+/oqJiVHWrFn14YcfytfXl8/HRCpz5szKnDmzrly5opiYGC1dulSSlDRpUkVFRSl79uzaunWrihUrpkuXLilbtmzatm2bfHx8FBcX9/DcdyiBTZgwQa+88ooOHz4sHx8fpUqVSj///LOioqLUtGlTHT161LmXV5IkSVSgQAFt3LhRQ4YM8Xoc7uv1/yVwkMPfmDdvnnk8HqtSpYo99dRTNmvWLLt06ZJlzJjRWrdu7dV3z549VrhwYdu1a1fCFAszM5swYYL179//hj3iv/zyi7Vr186yZ89uc+bMMbNre+m+/fZbGzt2rC1ZsoSBJRK5m12nWKpUKcudO7eVK1fOWX4ffPCBPfLII5Y6dWorW7as1atXj4ElEsDSpUvt0UcfvWHI3rCwMOvdu7dlyJDBunfv7jUKnBmnXCa0+NP86tWrZ+vWrUvocvAP4j8X4z/b/vzzT9uyZYsNGDDAUqVK5ZziHBcXd8t1i++8e2f69OmWPHlymzlzpoWGhnpNO3r0qBUrVsxKly5twcHBzvJ69dVX7bfffuOz8RY8ZuweTcxatWql4OBgpUuXTmfOnNHbb7+t1KlT65lnnlGVKlXUrl07pU6dWgMGDND58+e1fv16Z28s7q0xY8botdde0/r16/XHH38oW7ZsqlatmjP9l19+0dChQ7Vw4UKNHDlSjRs3vuExHqq7gd+nzp8/r44dO6pPnz565JFHtGPHDr322mvy9/fX9u3b5evrq99++01RUVFKkSKFcuXKJY/Ho6tXr7IH7y4yM2cvqiSdPn1aH374obZt26a6devq/fffd6b9+eefqlixoqKjo9WtWzf17t37hvmRcA4dOqRu3brp9OnTGjduHEcKE6m4uDhneyMiIkJJkyZ1vr/+/PNPjR07Vl988YU+//xztW3bVpL00UcfqXbt2ipTpoykG9db3D1nzpxRs2bN9Oyzz6pz585Oe3h4uPbt26eAgAClTZtWLVq00J9//qlatWrp0KFDunTpkrZv3y4fHx+2UW4mQWMcbin+IsApU6ZYu3btbNOmTdakSROrWrWqTZ061Xbt2mUlSpSw7NmzOzd15X4nCWfSpEnm7+9v8+fPtwsXLljNmjWtSJEiN5xTvHPnTitSpIhlzZqVmw7eB/bs2WNm/7fXddSoUZYvXz6rX7++nTt3zpm2adMmK1SokBUvXvymR51YJ++uv77n8Z+fp06dsq5du1rZsmW97n9y4MABa9GihX3zzTcsm0Tql19+se7du7N8Eqnrl8uQIUOsTp06VqtWLevYsaPTHhwcbH369LGAgAB7/fXXrVatWvboo49yZD6BhISEWOHChb3u1zZy5Eh79tlnzePxWJYsWax+/foWHR1tr7/+ujVr1sxatmzJtuU/IEglIitWrLCvv/7aq+3EiROWLVs2Gz9+vJ08edKaNGliVapUsUWLFllsbKwFBwfb3r17GU45AU2YMME8Ho/Vrl3baVu2bJk1a9bMSpQoccPpKc8++6wVLFjQmjRpcq9LhQsjRowwj8djK1asMLNrF73PmDHD2YFxvbi4ONu8ebMVK1bMsmTJwqAS98hf70vzySefWLNmzaxJkybOToyQkBDr1q2blSlTxlq1amXLli2zOnXqWIsWLW44LQmJExtwiVevXr0sc+bMNnDgQBs1apSlT5/ennrqKWdb5NSpUzZy5EirUKGC1+0HWKb3XkhIiGXPnt3atm1ry5cvt6ZNm1qxYsWsY8eO9tNPP9m3335rOXLksGHDht0wL9uWt0aQSiRWrFhhHo/HPB6P1a1b10aNGuXsDZ8+fbo1atTILl26ZHv37rWmTZtatWrVbghdfDDde2PGjDEfHx9r27atZc2a1Tp37uxMW7FihTVt2tRKlSplmzZtMrNrI4e1bNnSvvvuOza2E7mQkBBr27atJU+e3JYtW2Zm15bf999/b9myZbO6det69Y+Li7O1a9daixYt2DC/B4YMGWIej8fZUdG3b1/LkCGDtW3b1qpXr24+Pj42bdo0MzM7e/asDR061AoXLmz58uWz6tWrOxt0rIfA7bt+yOx58+ZZ4cKFbcOGDWZ27TYPKVKksOTJk1ulSpWcdczMLCoqymtYbSSMZcuWWVBQkOXJk8dKlChhy5cvt7Nnz5qZ2fnz561kyZLWp08fr3n4jPx7BKlE4tChQ1alShWrUaOGVatWzV5//XVLly6dDR061D7//HOrUaOGrV271szM9u3bZ9WqVbMuXbrwD56A4jfkFi5caGbXhqZPnz69denSxemzYsUKa9asmQUFBVmrVq2sbNmyVrZsWWdDm/CbOMWvV5cuXbLXX3/dkiVL5qx/kZGRNm/ePMubN681bNjwpvOZcZTjbvv999/ttddes5QpU9r69eutb9++XsvonXfeMT8/P5s6daqZXdt4u3Tpkh04cIAj+MC/ED9k9ubNm83M7Ntvv7UPP/zQzMwWLFhgadOmtREjRtiKFSvM39/fnnnmmRsGc2GbJeGFhITYH3/8cUP7+fPnrXLlys6N5HF7CFKJyIEDB6xJkybWqFEjW7p0qS1evNiaNGli9evXN4/HY08//bSzcXb48GFnY4APpoSxatUqr3t8Xbx40b766qsbwtT+/fvtk08+sSeffNI6derEqQ2J3PXLZcyYMfbhhx+ax+OxwMBA5zS/yMhImzt3ruXPn98aNWqUUKU+tKZMmWL//e9/LTg42Fq0aGEBAQGWN29eZwPP7NqpmO+88475+/t7rafxWP+A2zd+/HjLli2bdezY0Ws9+/PPPy00NNTKlStnAwYMMLNrlyQUKFDAPB6PtW/fPqFKhgshISHWsGFDe+KJJ9gJ6BJBKpH59ddfrV69elanTh3bv3+/Xb161fbt22evvvqq7dy508y8gxMbAwnv+uURGhp60zBlZl575tgTnvj16tXLsmbNamPGjLG+fftajRo1LGnSpM5pfpGRkfb9999bypQprUePHglc7cPjq6++Mo/HY4sXLzYzs9OnT9vrr79uHo/H5s2bZ2bmdcTpP//5j3k8Hme5AXDn74bMNrt2dDh79uy2fft2M7t2Y96WLVva1q1b2ShP5M6cOWMDBw60hg0bWpkyZbhVx79AkEqEDh48aHXq1LE6derYmjVrvKYRnBK/+DCVIUMG69q16w3TOYKY+B0/ftwKFizonBZmdm3Pa8uWLS1ZsmS2evVqMzOLiIiwNWvW8KVzj8SPjrlgwQKv9lOnTlnr1q0tefLkziAT8etZdHS0jRo1ip0XwL8QEhJi1apVsy+//NKr/dKlS7Z582bbsmWLnT9/3ooWLWpPP/20rV692mrVqmU1a9Z0tlf4fEy8duzYYU8++aS9+eabzmckn5XuEKQSqetvShh/3j/uH6GhoTZmzBjzeDw2dOjQhC4HLv3xxx+WPHly+/HHH522uLg4+/XXXy1PnjyWLl0654hIPDYW7q6bjY55/Rd+SEiIvfTSS5YiRYobwtTN+gP4Z7czZHblypVtzpw5VqhQIcufP79VrlyZU9jvIxcuXGAE0/8Bd25NpPLnz68vvvhCvr6+6tatm3bv3p3QJcGFwMBAPffcc5o7d666dOmS0OXgb9hN7kmeO3duValSRZMnT9b58+clSR6PR48++qiKFSumJEmSaODAgV7zcJPCu2fs2LF69dVX9eqrr2rfvn168803JUl+fn66evWqJClDhgwaMmSImjRpovr162vV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\n"},"metadata":{}}],"execution_count":9},{"cell_type":"code","source":"# trainにtransactionsを結合\ntrain_trans = train.merge(transactions, on=[\"date\", \"store_nbr\"], how=\"left\")\n\n# 曜日ごとの平均売上・平均取引件数\nweekday_trans = train_trans.groupby(\"weekday\")[[\"sales\", \"transactions\"]].mean().reindex(weekday_order)\n\nweekday_trans","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-07-03T12:29:19.346934Z","iopub.execute_input":"2026-07-03T12:29:19.347355Z","iopub.status.idle":"2026-07-03T12:29:19.356297Z","shell.execute_reply.started":"2026-07-03T12:29:19.347296Z","shell.execute_reply":"2026-07-03T12:29:19.355052Z"}},"outputs":[{"traceback":["\u001b[0;31m---------------------------------------------------------------------------\u001b[0m","\u001b[0;31mNameError\u001b[0m                                 Traceback (most recent call last)","\u001b[0;32m/tmp/ipykernel_58/1409375397.py\u001b[0m in \u001b[0;36m<cell line: 0>\u001b[0;34m()\u001b[0m\n\u001b[1;32m      1\u001b[0m \u001b[0;31m# trainにtransactionsを結合\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 2\u001b[0;31m \u001b[0mtrain_trans\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mtrain\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmerge\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtransactions\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mon\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m\"date\"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m\"store_nbr\"\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mhow\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0;34m\"left\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m      3\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      4\u001b[0m \u001b[0;31m# 曜日ごとの平均売上・平均取引件数\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      5\u001b[0m \u001b[0mweekday_trans\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mtrain_trans\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mgroupby\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"weekday\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m\"sales\"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m\"transactions\"\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmean\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mreindex\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mweekday_order\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n","\u001b[0;31mNameError\u001b[0m: name 'train' is not defined"],"ename":"NameError","evalue":"name 'train' is not defined","output_type":"error"}],"execution_count":4},{"cell_type":"code","source":"weekday_trans.plot(kind=\"bar\", figsize=(10,5))\nplt.title(\"Average Sales and Transactions by Weekday\")\nplt.xlabel(\"Weekday\")\nplt.ylabel(\"Average Value\")\nplt.xticks(rotation=45)\nplt.show()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-07-03T08:25:34.496Z","iopub.execute_input":"2026-07-03T08:25:34.496335Z","iopub.status.idle":"2026-07-03T08:25:34.715108Z","shell.execute_reply.started":"2026-07-03T08:25:34.496305Z","shell.execute_reply":"2026-07-03T08:25:34.713904Z"}},"outputs":[{"output_type":"display_data","data":{"text/plain":"<Figure size 1000x500 with 1 Axes>","image/png":"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8PDwwIYNG5TnpRERERERfW7YspVLnT59GlOnTsW5c+cQGhqKHTt24OnTpyhVqhSKFSuGdevW4caNGzh9+jS6desGExOTD66rW7dusLW1RevWrXH8+HGEhITg6NGj+O677/Do0SOEhIRg9OjRCAoKwoMHD3DgwAHcuXOH920RERER0WeNLVs6lJ0fMmxpaYmAgADMnz8fUVFRcHV1xZw5c9CsWTM4Ojqib9++qFSpElxcXDB16lQMHz78g+syNTVFQEAARo0ahXbt2uH169fIly8fGjZsCEtLS7x58wY3b97EmjVr8OzZMzg5OcHb2xv9+vXLxC0mIiIiIspcKvmUJwvnclFRUbCyssKrV69SdZN7+/YtQkJCUKhQIRgbG2dRhJRd8fNBRET0H3E0QspmPpYbvI/dCImIiIiIiHSAyRYREREREZEOMNkiIiIiIiLSASZbREREREREOsBki4iIiIiISAeYbBEREREREekAky0iIiIiIiIdYLJFRERERESkA0y2iIiIiIiIdIDJFn22jh49CpVKhZcvX2Z1KERERESUCxlkdQCftfFWmfx6r9JVvV69eqhQoQLmz5+vm3gyUVrbUqNGDYSFhcHKKpP3AxERERER2LJFHyEiSExMzOow/jUjIyM4OjpCpVJldShERERElAsx2cqlevbsiWPHjmHBggVQqVRQqVRYvXo1VCoV9u7dC3d3d6jVapw4cQJ//fUXWrduDQcHB5ibm6NKlSo4ePCg1voKFiyIqVOnolevXrCwsECBAgWwdOlSZX58fDwGDRoEJycnGBsbw9XVFdOmTVPmz507F+XKlYOZmRlcXFwwcOBAREdHa71GYGAg6tWrB1NTU+TJkweenp548eJFmtty//79NLsRbt++HWXKlIFarUbBggUxZ86cDN0OIiIiIqJk7EaYSy1YsAC3b99G2bJlMXHiRADAtWvXAAA//PADZs+ejcKFCyNPnjx4+PAhmjdvjilTpkCtVmPt2rVo2bIlbt26hQIFCijrnDNnDiZNmoQff/wR27Ztw4ABA1C3bl2UKFECv/zyC/744w9s2bIFBQoUwMOHD/Hw4UNlWT09Pfzyyy8oVKgQ7t27h4EDB2LkyJFYtGgRACA4OBgNGzZEr169sGDBAhgYGODIkSNISkpKc1vs7Oxw//59rW0+f/48OnXqhPHjx6Nz5844efIk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u3YNmzdvxoIFC7S6CRIREREREWW0LO1GeO7cOdSvX1+ZTk6AvLy8sHr1agDApk2bICL48ssvUy2vVquxadMmjB8/HnFxcShUqBCGDBmilUhZWVnhwIED8Pb2hru7O2xtbTF27NgMG/adiIiIiIgoLSoRkawOIruLioqClZUVXr16BUtLy6wOh4iIiCj3GG+Vya/3KnNf73P2me679OQGOeKeLSIiIiIiopyGyRYREREREZEOMNkiIiIiIiLSASZbREREREREOsBki4iIiIiISAeYbBEREREREekAky0iIiIiIiIdYLJFRERERESkA0y2iIiIiIiIdIDJFhERERERkQ4w2SIiIiIiItIBg6wOgIiIiChTjLfKxNd6lXmvRUTZFlu2iIiIiIiIdIDJFhERERERkQ4w2SIiIiIiItIB3rNF77AfOxERERFRhmLLFhERERERkQ6wZYuIKCtkZmsywBZlIiKiLMCWLSIiIiIiIh1gskVERERERKQDTLaIiIiIiIh0gPdsEeVkvO+HiIiIKNtiyxYREREREZEOMNkiIiIiIiLSASZbREREREREOsBki4iIiIiISAeYbBEREREREekAky0iIiIiIiIdYLJFRERERESkA0y2iIiIiIiIdIDJFhERERERkQ4YZHUAREREOcp4q0x+vVeZ+3pERJRh2LJFRERERESkA0y2iIiIiIiIdIDJFhERERERkQ4w2SIiIiIiItKBLE22AgIC0LJlSzg7O0OlUmHXrl1a83v27AmVSqX117RpU606z58/R7du3WBpaQlra2v07t0b0dHRWnUuX76M2rVrw9jYGC4uLpg5c6auN42IiIiIiHK5LE22YmJiUL58efj4+HywTtOmTREWFqb8bdy4UWt+t27dcO3aNfj7+8PPzw8BAQHo27evMj8qKgpNmjSBq6srzp8/j1mzZmH8+PFYunSpzraLiIiIiIgoS4d+b9asGZo1a/bROmq1Go6OjmnOu3HjBvbt24ezZ8+icuXKAICFCxeiefPmmD17NpydneHr64v4+HisXLkSRkZGKFOmDIKDgzF37lytpIyIiIiIiCgjZft7to4ePQp7e3uUKFECAwYMwLNnz5R5QUFBsLa2VhItAGjUqBH09PRw+vRppU6dOnVgZGSk1PH09MStW7fw4sWLNF8zLi4OUVFRWn9ERERERETpka2TraZNm2Lt2rU4dOgQZsyYgWPHjqFZs2ZISkoCAISHh8Pe3l5rGQMDA9jY2CA8PFyp4+DgoFUneTq5zvumTZsGKysr5c/FxSWjN42IiIiIiD5zWdqN8J906dJF+X+5cuXg5uaGIkWK4OjRo2jYsKHOXnf06NEYOnSoMh0VFcWEi4iIiIiI0iVbt2y9r3DhwrC1tcXdu3cBAI6OjoiMjNSqk5iYiOfPnyv3eTk6OiIiIkKrTvL0h+4FU6vVsLS01PojIiIiIiJKjxyVbD169AjPnj2Dk5MTAMDDwwMvX77E+fPnlTqHDx+GRqNBtWrVlDoBAQFISEhQ6vj7+6NEiRLIkydP5m4AERERERHlGlmabEVHRyM4OBjBwcEAgJCQEAQHByM0NBTR0dEYMWIETp06hfv37+PQoUNo3bo1ihYtCk9PTwBAqVKl0LRpU/Tp0wdnzpxBYGAgBg0ahC5dusDZ2RkA0LVrVxgZGaF37964du0aNm/ejAULFmh1EyQiIiIiIspoWZpsnTt3DhUrVkTFihUBAEOHDkXFihUxduxY6Ovr4/Lly2jVqhWKFy+O3r17w93dHcePH4darVbW4evri5IlS6Jhw4Zo3rw5atWqpfUMLSsrKxw4cAAhISFwd3fHsGHDMHbsWA77TkREREREOpWlA2TUq1cPIvLB+fv37//HddjY2GDDhg0frePm5objx4+nOz4iIiIiIqJ/K0fds0VERERERJRTMNkiIiIiIiLSASZbREREREREOsBki4iIiIiISAeYbBEREREREekAky0iIiIiIiIdYLJFRERERESkA0y2iIiIiIiIdIDJFhERERERkQ4w2SIiIiIiItIBJltEREREREQ6wGSLiIiIiIhIB5hsERERERER6QCTLSIiIiIiIh1gskVERERERKQDTLaIiIiIiIh0gMkWERERERGRDjDZIiIiIiIi0gEmW0RERERERDrAZIuIiIiIiEgHmGwRERERERHpAJMtIiIiIiIiHWCyRUREREREpANMtoiIiIiIiHSAyRYREREREZEOMNkiIiIiIiLSASZbREREREREOsBki4iIiIiISAeYbBEREREREekAky0iIiIiIiIdYLJFRERERESkA0y2iIiIiIiIdIDJFhERERERkQ4w2SIiIiIiItKB/5RsvX37NqPiICIiIiIi+qykO9nSaDSYNGkS8uXLB3Nzc9y7dw8A8PPPP2PFihUZHiAREREREVFOlO5ka/LkyVi9ejVmzpwJIyMjpbxs2bJYvnx5utYVEBCAli1bwtnZGSqVCrt27VLmJSQkYNSoUShXrhzMzMzg7OyMHj164MmTJ1rrKFiwIFQqldbf9OnTtepcvnwZtWvXhrGxMVxcXDBz5sz0bjYREREREVG6pDvZWrt2LZYuXYpu3bpBX19fKS9fvjxu3ryZrnXFxMSgfPny8PHxSTUvNjYWFy5cwM8//4wLFy5gx44duHXrFlq1apWq7sSJExEWFqb8ffvtt8q8qKgoNGnSBK6urjh//jxmzZqF8ePHY+nSpemKlYiIiIiIKD0M0rvA48ePUbRo0VTlGo0GCQkJ6VpXs2bN0KxZszTnWVlZwd/fX6vs119/RdWqVREaGooCBQoo5RYWFnB0dExzPb6+voiPj8fKlSthZGSEMmXKIDg4GHPnzkXfvn3TFS8REREREdGnSnfLVunSpXH8+PFU5du2bUPFihUzJKgPefXqFVQqFaytrbXKp0+fjrx586JixYqYNWsWEhMTlXlBQUGoU6eOVpdHT09P3Lp1Cy9evEjzdeLi4hAVFaX1R0RERERElB7pbtkaO3YsvLy88PjxY2g0GqV739q1a+Hn56eLGAG8G/lw1KhR+PLLL2FpaamUf/fdd6hUqRJsbGxw8uRJjB49GmFhYZg7dy4AIDw8HIUKFdJal4ODgzIvT548qV5r2rRpmDBhgs62hYiIiIiIPn/pTrZat26NP//8ExMnToSZmRnGjh2LSpUq4c8//0Tjxo11ESMSEhLQqVMniAgWL16sNW/o0KHK/93c3GBkZIR+/fph2rRpUKvV/+r1Ro8erbXeqKgouLi4/LvgiYiIiIgoV0p3sgUAtWvXTnU/la4kJ1oPHjzA4cOHtVq10lKtWjUkJibi/v37KFGiBBwdHREREaFVJ3n6Q/d5qdXqf52oERERERERAf/xoca6lpxo3blzBwcPHkTevHn/cZng4GDo6enB3t4eAODh4YGAgACtwTv8/f1RokSJNLsQEhERERERZYR0t2zp6elBpVJ9cH5SUtInrys6Ohp3795VpkNCQhAcHAwbGxs4OTmhQ4cOuHDhAvz8/JCUlITw8HAAgI2NDYyMjBAUFITTp0+jfv36sLCwQFBQEIYMGYKvvvpKSaS6du2KCRMmoHfv3hg1ahSuXr2KBQsWYN68eenddCIiIiIiok+W7mRr586dWtMJCQm4ePEi1qxZk+5BJc6dO4f69esr08n3SXl5eWH8+PH4448/AAAVKlTQWu7IkSOoV68e1Go1Nm3ahPHjxyMuLg6FChXCkCFDtO63srKywoEDB+Dt7Q13d3fY2tpi7NixHPadiIiIiIh06l8NkPG+Dh06oEyZMti8eTN69+79yeuqV68eROSD8z82DwAqVaqEU6dO/ePruLm5pTlcPRERERERka5k2D1b1atXx6FDhzJqdURERERERDlahiRbb968wS+//IJ8+fJlxOqIiIiIiIhyvHR3I8yTJ4/WABkigtevX8PU1BTr16/P0OCIiIiIiIhyqnQnW/PmzdNKtvT09GBnZ4dq1apxKHUiIiIiIqL/l+5kq2fPnjoIg4iIiIiI6PPyScnW5cuXP3mFbm5u/zoYIiIiIiKiz8UnJVsVKlSASqX6x6HYVSpVuh5qTERERERE9Ln6pGQrJCRE13EQERERERF9Vj4p2XJ1ddV1HERERERERJ+VdA+Qkez69esIDQ1FfHy8VnmrVq3+c1BEREREREQ5XbqTrXv37qFt27a4cuWK1n1cycPB854tIiIiIiIiQC+9C3z//fcoVKgQIiMjYWpqimvXriEgIACVK1fG0aNHdRAiERERERFRzpPulq2goCAcPnwYtra20NPTg56eHmrVqoVp06bhu+++w8WLF3URJxERERERUY6S7patpKQkWFhYAABsbW3x5MkTAO8G0bh161bGRkdERERERJRDpbtlq2zZsrh06RIKFSqEatWqYebMmTAyMsLSpUtRuHBhXcRIRERERESU46Q72RozZgxiYmIAABMnTsQXX3yB2rVrI2/evNi8eXOGB0hERERERJQTfXKyVblyZXzzzTfo2rUrLC0tAQBFixbFzZs38fz5c+TJk0cZkZCIiIiIiCi3++R7tsqXL4+RI0fCyckJPXr00Bp50MbGhokWERERERFRCp+cbK1YsQLh4eHw8fFBaGgoGjZsiKJFi2Lq1Kl4/PixLmMkIiIiIiLKcdI1GqGpqSl69uyJo0eP4vbt2+jSpQt+++03FCxYEC1atMCOHTt0FScREREREVGOku6h35MVKVIEkydPxv3797Fx40acOnUKHTt2zMjYiIiIiIiIcqx0j0aY0tGjR7Fq1Sps374dBgYG6NOnT0bFRURERERElKOlO9l69OgRVq9ejdWrV+PevXuoXbs2Fi1ahI4dO8LExEQXMRIREREREeU4n5xsbdmyBStXrsShQ4dgb28PLy8v9OrVC0WLFtVlfERERERERDnSJydbX331FVq0aIGdO3eiefPm0NP717d7ERERERERffY+Odl69OgR7O3tdRkLERERERHRZ+OTm6eYaBEREREREX069gUkIiIiIiLSASZbREREREREOsBki4iIiIiISAf+VbL18uVLLF++HKNHj8bz588BABcuXMDjx48zNDgiIiIiIqKcKt0PNb58+TIaNWoEKysr3L9/H3369IGNjQ127NiB0NBQrF27VhdxEhERERER5SjpbtkaOnQoevbsiTt37sDY2Fgpb968OQICAjI0OCIiIiIiopwq3cnW2bNn0a9fv1Tl+fLlQ3h4eIYERURERERElNOlO9lSq9WIiopKVX779m3Y2dllSFBEREREREQ5XbqTrVatWmHixIlISEgAAKhUKoSGhmLUqFFo3759hgdIRERERESUE6U72ZozZw6io6Nhb2+PN2/eoG7duihatCgsLCwwZcqUdK0rICAALVu2hLOzM1QqFXbt2qU1X0QwduxYODk5wcTEBI0aNcKdO3e06jx//hzdunWDpaUlrK2t0bt3b0RHR2vVuXz5MmrXrg1jY2O4uLhg5syZ6d1sIiIiIiKidEl3smVlZQV/f3/8+eef+OWXXzBo0CDs2bMHx44dg5mZWbrWFRMTg/Lly8PHxyfN+TNnzsQvv/yCJUuW4PTp0zAzM4Onpyfevn2r1OnWrRuuXbsGf39/+Pn5ISAgAH379lXmR0VFoUmTJnB1dcX58+cxa9YsjB8/HkuXLk3vphMREREREX2ydA/9nqxWrVqoVavWf3rxZs2aoVmzZmnOExHMnz8fY8aMQevWrQEAa9euhYODA3bt2oUuXbrgxo0b2LdvH86ePYvKlSsDABYuXIjmzZtj9uzZcHZ2hq+vL+Lj47Fy5UoYGRmhTJkyCA4Oxty5c7WSMiIiIiIiooyU7mTrl19+SbNcpVLB2NgYRYsWRZ06daCvr/+fAgsJCUF4eDgaNWqklFlZWaFatWoICgpCly5dEBQUBGtrayXRAoBGjRpBT08Pp0+fRtu2bREUFIQ6derAyMhIqePp6YkZM2bgxYsXyJMnT6rXjouLQ1xcnDKd1oAgREREREREH5PuZGvevHl4+vQpYmNjlUTlxYsXMDU1hbm5OSIjI1G4cGEcOXIELi4u/zqw5GHkHRwctModHByUeeHh4bC3t9eab2BgABsbG606hQoVSrWO5HlpJVvTpk3DhAkT/nXsRERERERE6b5na+rUqahSpQru3LmDZ8+e4dmzZ7h9+zaqVauGBQsWIDQ0FI6OjhgyZIgu4s0Uo0ePxqtXr5S/hw8fZnVIRERERESUw6S7ZWvMmDHYvn07ihQpopQVLVoUs2fPRvv27XHv3j3MnDnzPw8D7+joCACIiIiAk5OTUh4REYEKFSoodSIjI7WWS0xMxPPnz5XlHR0dERERoVUneTq5zvvUajXUavV/ip+IiIiIiHK3dLdshYWFITExMVV5YmKi0nXP2dkZr1+//k+BFSpUCI6Ojjh06JBSFhUVhdOnT8PDwwMA4OHhgZcvX+L8+fNKncOHD0Oj0aBatWpKnYCAAOW5YADg7++PEiVKpNmFkIiIiIiIKCOkO9mqX78++vXrh4sXLyplFy9exIABA9CgQQMAwJUrV1LdJ5WW6OhoBAcHIzg4GMC7QTGCg4MRGhoKlUqFwYMHY/Lkyfjjjz9w5coV9OjRA87OzmjTpg0AoFSpUmjatCn69OmDM2fOIDAwEIMGDUKXLl3g7OwMAOjatSuMjIzQu3dvXLt2DZs3b8aCBQswdOjQ9G46ERERERHRJ0t3N8IVK1age/fucHd3h6GhIYB3rVoNGzbEihUrAADm5uaYM2fOP67r3LlzqF+/vjKdnAB5eXlh9erVGDlyJGJiYtC3b1+8fPkStWrVwr59+2BsbKws4+vri0GDBqFhw4bQ09ND+/bttUZMtLKywoEDB+Dt7Q13d3fY2tpi7NixHPadiIiIiIh0Kt3JlqOjI/z9/XHz5k3cvn0bAFCiRAmUKFFCqZMygfqYevXqQUQ+OF+lUmHixImYOHHiB+vY2Nhgw4YNH30dNzc3HD9+/JNiIiIiIiIiygj/+qHGJUuWRMmSJTMyFiIiIiIios/Gv0q2Hj16hD/++AOhoaGIj4/Xmjd37twMCYyIiIiIiCgnS3eydejQIbRq1QqFCxfGzZs3UbZsWdy/fx8igkqVKukiRiIiIiIiohwn3aMRjh49GsOHD8eVK1dgbGyM7du34+HDh6hbty46duyoixiJiIiIiIhynHQnWzdu3ECPHj0AAAYGBnjz5g3Mzc0xceJEzJgxI8MDJCIiIiIiyonSnWyZmZkp92k5OTnhr7/+Uub9/fffGRcZERERERFRDpbue7aqV6+OEydOoFSpUmjevDmGDRuGK1euYMeOHahevbouYiQiIiIiIspx0p1szZ07F9HR0QCACRMmIDo6Gps3b0axYsU4EiEREREREdH/S1eylZSUhEePHsHNzQ3Auy6FS5Ys0UlgREREREREOVm67tnS19dHkyZN8OLFC13FQ0RERERE9FlI9wAZZcuWxb1793QRCxERERER0Wcj3cnW5MmTMXz4cPj5+SEsLAxRUVFaf0RERERERPQvBsho3rw5AKBVq1ZQqVRKuYhApVIhKSkp46IjIiIiIiLKodKdbB05ckQXcRAREREREX1W0p1s1a1bVxdxEBERERERfVbSfc8WABw/fhxfffUVatSogcePHwMA1q1bhxMnTmRocERERERERDlVupOt7du3w9PTEyYmJrhw4QLi4uIAAK9evcLUqVMzPEAiIiIiIqKc6F+NRrhkyRIsW7YMhoaGSnnNmjVx4cKFDA2OiIiIiIgop0p3snXr1i3UqVMnVbmVlRVevnyZETERERERERHleOlOthwdHXH37t1U5SdOnEDhwoUzJCgiIiIiIqKcLt3JVp8+ffD999/j9OnTUKlUePLkCXx9fTF8+HAMGDBAFzESERERERHlOOke+v2HH36ARqNBw4YNERsbizp16kCtVmP48OH49ttvdREjERERERFRjpPuZEulUuGnn37CiBEjcPfuXURHR6N06dIwNzfXRXxEREREREQ5Urq7Ea5fvx6xsbEwMjJC6dKlUbVqVSZaRERERERE70l3sjVkyBDY29uja9eu2LNnD5KSknQRFxERERERUY6W7mQrLCwMmzZtgkqlQqdOneDk5ARvb2+cPHlSF/ERERERERHlSOlOtgwMDPDFF1/A19cXkZGRmDdvHu7fv4/69eujSJEiuoiRiIiIiIgox0n3ABkpmZqawtPTEy9evMCDBw9w48aNjIqLiIiIiIgoR0t3yxYAxMbGwtfXF82bN0e+fPkwf/58tG3bFteuXcvo+IiIiIiIiHKkdLdsdenSBX5+fjA1NUWnTp3w888/w8PDQxexERERERER5VjpTrb09fWxZcsWeHp6Ql9fX2ve1atXUbZs2QwLjoiIiIiIKKdKd7Ll6+urNf369Wts3LgRy5cvx/nz5zkUPBEREREREf7lPVsAEBAQAC8vLzg5OWH27Nlo0KABTp06lZGxERERERER5VjpatkKDw/H6tWrsWLFCkRFRaFTp06Ii4vDrl27ULp0aV3FSERERERElON8cstWy5YtUaJECVy+fBnz58/HkydPsHDhQl3GRkRERERElGN9csvW3r178d1332HAgAEoVqyYLmMiIiIiIiLK8T65ZevEiRN4/fo13N3dUa1aNfz666/4+++/dRkbAKBgwYJQqVSp/ry9vQEA9erVSzWvf//+WusIDQ1FixYtYGpqCnt7e4wYMQKJiYk6j52IiIiIiHKvT062qlevjmXLliEsLAz9+vXDpk2b4OzsDI1GA39/f7x+/VonAZ49exZhYWHKn7+/PwCgY8eOSp0+ffpo1Zk5c6YyLykpCS1atEB8fDxOnjyJNWvWYPXq1Rg7dqxO4iUiIiIiIgL+xWiEZmZm6NWrF06cOIErV65g2LBhmD59Ouzt7dGqVasMD9DOzg6Ojo7Kn5+fH4oUKYK6desqdUxNTbXqWFpaKvMOHDiA69evY/369ahQoQKaNWuGSZMmwcfHB/Hx8RkeLxEREREREfAfhn4HgBIlSmDmzJl49OgRNm7cmFExfVB8fDzWr1+PXr16QaVSKeW+vr6wtbVF2bJlMXr0aMTGxirzgoKCUK5cOTg4OChlnp6eiIqKwrVr19J8nbi4OERFRWn9ERERERERpUe6H2qcFn19fbRp0wZt2rTJiNV90K5du/Dy5Uv07NlTKevatStcXV3h7OyMy5cvY9SoUbh16xZ27NgB4N1w9SkTLQDKdHh4eJqvM23aNEyYMEE3G0FERERERLlChiRbmWXFihVo1qwZnJ2dlbK+ffsq/y9XrhycnJzQsGFD/PXXXyhSpMi/ep3Ro0dj6NChynRUVBRcXFz+feBERERERJTr5Jhk68GDBzh48KDSYvUh1apVAwDcvXsXRYoUgaOjI86cOaNVJyIiAgDg6OiY5jrUajXUanUGRE1ERERERLnVf7pnKzOtWrUK9vb2aNGixUfrBQcHAwCcnJwAAB4eHrhy5QoiIyOVOv7+/rC0tETp0qV1Fi8REREREeVuOaJlS6PRYNWqVfDy8oKBwf9C/uuvv7BhwwY0b94cefPmxeXLlzFkyBDUqVMHbm5uAIAmTZqgdOnS6N69O2bOnInw8HCMGTMG3t7ebL0iIiIiIiKdyRHJ1sGDBxEaGopevXpplRsZGeHgwYOYP38+YmJi4OLigvbt22PMmDFKHX19ffj5+WHAgAHw8PCAmZkZvLy8MHHixMzeDCIiIiIiykVyRLLVpEkTiEiqchcXFxw7duwfl3d1dcWePXt0ERoREREREVGacsw9W0RERERERDkJky0iIiIiIiIdYLJFRERERESkA0y2iIiIiIiIdIDJFhERERERkQ4w2SIiIiIiItIBJltEREREREQ6wGSLiIiIiIhIB5hsERERERER6QCTLSIiIiIiIh1gskVERERERKQDTLaIiIiIiIh0gMkWERERERGRDjDZIiIiIiIi0gEmW0RERERERDrAZIuIiIiIiEgHmGwRERERERHpAJMtIiIiIiIiHWCyRUREREREpANMtoiIiIiIiHSAyRYREREREZEOMNkiIiIiIiLSASZbREREREREOsBki4iIiIiISAeYbBEREREREekAky0iIiIiIiIdYLJFRERERESkA0y2iIiIiIiIdIDJFhERERERkQ4w2SIiIiIiItIBJltEREREREQ6wGSLiIiIiIhIB5hsERERERER6QCTLSIiIiIiIh1gskVERERERKQDTLaIiIiIiIh0IFsnW+PHj4dKpdL6K1mypDL/7du38Pb2Rt68eWFubo727dsjIiJCax2hoaFo0aIFTE1NYW9vjxEjRiAxMTGzN4WIiIiIiHIZg6wO4J+UKVMGBw8eVKYNDP4X8pAhQ7B7925s3boVVlZWGDRoENq1a4fAwEAAQFJSElq0aAFHR0ecPHkSYWFh6NGjBwwNDTF16tRM3xYiIiIiIso9sn2yZWBgAEdHx1Tlr169wooVK7BhwwY0aNAAALBq1SqUKlUKp06dQvXq1XHgwAFcv34dBw8ehIODAypUqIBJkyZh1KhRGD9+PIyMjDJ7c4iIiIiIKJfI1t0IAeDOnTtwdnZG4cKF0a1bN4SGhgIAzp8/j4SEBDRq1EipW7JkSRQoUABBQUEAgKCgIJQrVw4ODg5KHU9PT0RFReHatWsffM24uDhERUVp/REREREREaVHtk62qlWrhtWrV2Pfvn1YvHgxQkJCULt2bbx+/Rrh4eEwMjKCtbW11jIODg4IDw8HAISHh2slWsnzk+d9yLRp02BlZaX8ubi4ZOyGERERERHRZy9bdyNs1qyZ8n83NzdUq1YNrq6u2LJlC0xMTHT2uqNHj8bQoUOV6aioKCZcRERERESULtm6Zet91tbWKF68OO7evQtHR0fEx8fj5cuXWnUiIiKUe7wcHR1TjU6YPJ3WfWDJ1Go1LC0ttf6IiIiIiIjSI0clW9HR0fjrr7/g5OQEd3d3GBoa4tChQ8r8W7duITQ0FB4eHgAADw8PXLlyBZGRkUodf39/WFpaonTp0pkePxERERER5R7Zuhvh8OHD0bJlS7i6uuLJkycYN24c9PX18eWXX8LKygq9e/fG0KFDYWNjA0tLS3z77bfw8PBA9erVAQBNmjRB6dKl0b17d8ycORPh4eEYM2YMvL29oVars3jriIiIiIjoc5atk61Hjx7hyy+/xLNnz2BnZ4datWrh1KlTsLOzAwDMmzcPenp6aN++PeLi4uDp6YlFixYpy+vr68PPzw8DBgyAh4cHzMzM4OXlhYkTJ2bVJhERERERUS6RrZOtTZs2fXS+sbExfHx84OPj88E6rq6u2LNnT0aHRkRERERE9FHZOtkiIiIiIqKMUfCH3Zn6eveNM/XlsqUcNUAGERERERFRTsFki4iIiIiISAeYbBEREREREekAky0iIiIiIiIdYLJFRERERESkAxyNkIiIiIjSJTNHteOIdpSTsWWLiIiIiIhIB5hsERERERER6QCTLSIiIiIiIh1gskVERERERKQDTLaIiIiIiIh0gMkWERERERGRDjDZIiIiIiIi0gEmW0RERERERDrAZIuIiIiIiEgHmGwRERERERHpAJMtIiIiIiIiHWCyRUREREREpANMtoiIiIiIiHSAyRYREREREZEOMNkiIiIiIiLSAYOsDoDSVvCH3Zn6eveNM/XliIiIiIg+e2zZIiIiIiIi0gG2bBER/b/MbFFmazIREdHnjy1bREREREREOsCWLSIiIsoSvD+ZiD53TLaIMhi7ohERERERwG6EREREREREOsFki4iIiIiISAeYbBEREREREekAky0iIiIiIiIdYLJFRERERESkA0y2iIiIiIiIdIBDvxMRUY7GZzUREVF2xZYtIiIiIiIiHcjWyda0adNQpUoVWFhYwN7eHm3atMGtW7e06tSrVw8qlUrrr3///lp1QkND0aJFC5iamsLe3h4jRoxAYmJiZm4KERERERHlMtm6G+GxY8fg7e2NKlWqIDExET/++COaNGmC69evw8zMTKnXp08fTJw4UZk2NTVV/p+UlIQWLVrA0dERJ0+eRFhYGHr06AFDQ0NMnTo1U7eHiIiIiIhyj2ydbO3bt09revXq1bC3t8f58+dRp04dpdzU1BSOjo5pruPAgQO4fv06Dh48CAcHB1SoUAGTJk3CqFGjMH78eBgZGel0G4iIiIiIKHfK1t0I3/fq1SsAgI2NjVa5r68vbG1tUbZsWYwePRqxsbHKvKCgIJQrVw4ODg5KmaenJ6KionDt2rU0XycuLg5RUVFaf0REREREROmRrVu2UtJoNBg8eDBq1qyJsmXLKuVdu3aFq6srnJ2dcfnyZYwaNQq3bt3Cjh07AADh4eFaiRYAZTo8PDzN15o2bRomTJigoy0hIiIiIqLcIMckW97e3rh69SpOnDihVd63b1/l/+XKlYOTkxMaNmyIv/76C0WKFPlXrzV69GgMHTpUmY6KioKLi8u/C5yIiIiIiHKlHNGNcNCgQfDz88ORI0eQP3/+j9atVq0aAODu3bsAAEdHR0RERGjVSZ7+0H1earUalpaWWn9ERERERETpka2TLRHBoEGDsHPnThw+fBiFChX6x2WCg4MBAE5OTgAADw8PXLlyBZGRkUodf39/WFpaonTp0jqJm4iIiIiIKFt3I/T29saGDRvw+++/w8LCQrnHysrKCiYmJvjrr7+wYcMGNG/eHHnz5sXly5cxZMgQ1KlTB25ubgCAJk2aoHTp0ujevTtmzpyJ8PBwjBkzBt7e3lCr1Vm5eURERERE9BnL1i1bixcvxqtXr1CvXj04OTkpf5s3bwYAGBkZ4eDBg2jSpAlKliyJYcOGoX379vjzzz+Vdejr68PPzw/6+vrw8PDAV199hR49emg9l4uIiIiIiCijZeuWLRH56HwXFxccO3bsH9fj6uqKPXv2ZFRYRERERERE/yhbt2wRERERERHlVEy2iIiIiIiIdIDJFhERERERkQ4w2SIiIiIiItIBJltEREREREQ6wGSLiIiIiIhIB5hsERERERER6QCTLSIiIiIiIh1gskVERERERKQDTLaIiIiIiIh0gMkWERERERGRDjDZIiIiIiIi0gEmW0RERERERDrAZIuIiIiIiEgHmGwRERERERHpAJMtIiIiIiIiHWCyRUREREREpANMtoiIiIiIiHSAyRYREREREZEOMNkiIiIiIiLSASZbREREREREOsBki4iIiIiISAeYbBEREREREekAky0iIiIiIiIdYLJFRERERESkA0y2iIiIiIiIdIDJFhERERERkQ4w2SIiIiIiItIBJltEREREREQ6wGSLiIiIiIhIB5hsERERERER6QCTLSIiIiIiIh1gskVERERERKQDTLaIiIiIiIh0gMkWERERERGRDjDZIiIiIiIi0oFclWz5+PigYMGCMDY2RrVq1XDmzJmsDomIiIiIiD5TuSbZ2rx5M4YOHYpx48bhwoULKF++PDw9PREZGZnVoRERERER0Wco1yRbc+fORZ8+ffD111+jdOnSWLJkCUxNTbFy5cqsDo2IiIiIiD5DBlkdQGaIj4/H+fPnMXr0aKVMT08PjRo1QlBQUKr6cXFxiIuLU6ZfvXoFAIiKitJ9sP9PExebaa8FAFEqycQXy7z3MStk5r7L1P0GcN9lIO67jPNZf18C3HcZiL91GYfflznTZ33MAZm275JzApF/3j6VfEqtHO7JkyfIly8fTp48CQ8PD6V85MiROHbsGE6fPq1Vf/z48ZgwYUJmh0lERERERDnEw4cPkT9//o/WyRUtW+k1evRoDB06VJnWaDR4/vw58ubNC5VKlYWR6UZUVBRcXFzw8OFDWFpaZnU49Im433Iu7ruci/su5+K+y5m433Kuz3nfiQhev34NZ2fnf6ybK5ItW1tb6OvrIyIiQqs8IiICjo6Oqeqr1Wqo1WqtMmtra12GmC1YWlp+dgdDbsD9lnNx3+Vc3Hc5F/ddzsT9lnN9rvvOysrqk+rligEyjIyM4O7ujkOHDillGo0Ghw4d0upWSERERERElFFyRcsWAAwdOhReXl6oXLkyqlativnz5yMmJgZff/11VodGRERERESfoVyTbHXu3BlPnz7F2LFjER4ejgoVKmDfvn1wcHDI6tCynFqtxrhx41J1naTsjfst5+K+y7m473Iu7rucifst5+K+eydXjEZIRERERESU2XLFPVtERERERESZjckWERERERGRDjDZIiIiIiIi0gEmW0RERERERDrAZIsoF0o5Lg7HyCEiIiLSDSZbRLmQSqXS+j8Trs+HRqMBwCQ6O3t/3yTvMyLSjZTHHI+37O1z/O1iskX/Gr+wcjYfHx/07NkTgHby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\n"},"metadata":{}}],"execution_count":11},{"cell_type":"code","source":"# すでに結合済みでも大丈夫なように、trainから作り直す\ntrain_trans = train.copy()\n\n# weekdayがなければ作る\ntrain_trans[\"weekday\"] = train_trans[\"date\"].dt.day_name()\n\n# transactionsを結合\ntrain_trans = train_trans.merge(\n    transactions,\n    on=[\"date\", \"store_nbr\"],\n    how=\"left\"\n)\n\n# 曜日ごとの平均売上・平均取引件数\nweekday_trans = train_trans.groupby(\"weekday\")[[\"sales\", \"transactions\"]].mean()\n\n# 曜日順に並べる\nweekday_order = [\"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\", \"Sunday\"]\nweekday_trans = weekday_trans.reindex(weekday_order)\n\nweekday_trans","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-07-03T12:30:58.34985Z","iopub.execute_input":"2026-07-03T12:30:58.350276Z","iopub.status.idle":"2026-07-03T12:30:58.359445Z","shell.execute_reply.started":"2026-07-03T12:30:58.350238Z","shell.execute_reply":"2026-07-03T12:30:58.358382Z"}},"outputs":[{"traceback":["\u001b[0;31m---------------------------------------------------------------------------\u001b[0m","\u001b[0;31mNameError\u001b[0m                                 Traceback (most recent call last)","\u001b[0;32m/tmp/ipykernel_58/2561528702.py\u001b[0m in \u001b[0;36m<cell line: 0>\u001b[0;34m()\u001b[0m\n\u001b[1;32m      1\u001b[0m \u001b[0;31m# すでに結合済みでも大丈夫なように、trainから作り直す\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 2\u001b[0;31m \u001b[0mtrain_trans\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mtrain\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mcopy\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m      3\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      4\u001b[0m \u001b[0;31m# weekdayがなければ作る\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      5\u001b[0m \u001b[0mtrain_trans\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m\"weekday\"\u001b[0m\u001b[0;34m]\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mtrain_trans\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m\"date\"\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdt\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mday_name\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n","\u001b[0;31mNameError\u001b[0m: name 'train' is not defined"],"ename":"NameError","evalue":"name 'train' is not defined","output_type":"error"}],"execution_count":5},{"cell_type":"code","source":"print(train)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-07-03T12:31:31.518741Z","iopub.execute_input":"2026-07-03T12:31:31.519098Z","iopub.status.idle":"2026-07-03T12:31:31.52671Z","shell.execute_reply.started":"2026-07-03T12:31:31.519069Z","shell.execute_reply":"2026-07-03T12:31:31.525608Z"}},"outputs":[{"traceback":["\u001b[0;31m---------------------------------------------------------------------------\u001b[0m","\u001b[0;31mNameError\u001b[0m                                 Traceback (most recent call last)","\u001b[0;32m/tmp/ipykernel_58/3119594288.py\u001b[0m in \u001b[0;36m<cell line: 0>\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mtrain\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m","\u001b[0;31mNameError\u001b[0m: name 'train' is not defined"],"ename":"NameError","evalue":"name 'train' is not defined","output_type":"error"}],"execution_count":6},{"cell_type":"code","source":"import pandas as pd\nimport matplotlib.pyplot as plt\n\npath = \"/kaggle/input/competitions/Store-Sales-Forecasting/\"\n\ntrain = pd.read_csv(path + \"train.csv\")\nstores = pd.read_csv(path + \"stores.csv\")\ntransactions = pd.read_csv(path + \"transactions.csv\")\nholidays = pd.read_csv(path + \"holidays_events.csv\")\noil = pd.read_csv(path + \"oil.csv\")\n\ntrain[\"date\"] = pd.to_datetime(train[\"date\"])\ntransactions[\"date\"] = pd.to_datetime(transactions[\"date\"])\nholidays[\"date\"] = pd.to_datetime(holidays[\"date\"])\noil[\"date\"] = pd.to_datetime(oil[\"date\"])\n\ntrain[\"weekday\"] = train[\"date\"].dt.day_name()","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-07-03T12:32:02.620231Z","iopub.execute_input":"2026-07-03T12:32:02.620632Z","iopub.status.idle":"2026-07-03T12:32:05.930684Z","shell.execute_reply.started":"2026-07-03T12:32:02.620601Z","shell.execute_reply":"2026-07-03T12:32:05.929602Z"}},"outputs":[],"execution_count":8},{"cell_type":"code","source":"train_trans = train.merge(\n    transactions,\n    on=[\"date\", \"store_nbr\"],\n    how=\"left\"\n)","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-07-03T12:48:38.403478Z","iopub.execute_input":"2026-07-03T12:48:38.404249Z","iopub.status.idle":"2026-07-03T12:48:39.059904Z","shell.execute_reply.started":"2026-07-03T12:48:38.404213Z","shell.execute_reply":"2026-07-03T12:48:39.059028Z"}},"outputs":[],"execution_count":10},{"cell_type":"code","source":"weekday_trans = train_trans.groupby(\"weekday\")[[\"sales\", \"transactions\"]].mean()\nweekday_trans = weekday_trans.reindex(weekday_order)\n\nweekday_trans","metadata":{"trusted":true,"execution":{"iopub.status.busy":"2026-07-03T12:49:03.916911Z","iopub.execute_input":"2026-07-03T12:49:03.91727Z","iopub.status.idle":"2026-07-03T12:49:04.157692Z","shell.execute_reply.started":"2026-07-03T12:49:03.917242Z","shell.execute_reply":"2026-07-03T12:49:04.156235Z"}},"outputs":[{"traceback":["\u001b[0;31m---------------------------------------------------------------------------\u001b[0m","\u001b[0;31mNameError\u001b[0m                                 Traceback (most recent call last)","\u001b[0;32m/tmp/ipykernel_58/1908746856.py\u001b[0m in \u001b[0;36m<cell line: 0>\u001b[0;34m()\u001b[0m\n\u001b[1;32m      1\u001b[0m \u001b[0mweekday_trans\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mtrain_trans\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mgroupby\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"weekday\"\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m[\u001b[0m\u001b[0;34m\"sales\"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0;34m\"transactions\"\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mmean\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 2\u001b[0;31m \u001b[0mweekday_trans\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mweekday_trans\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mreindex\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mweekday_order\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m      3\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m      4\u001b[0m \u001b[0mweekday_trans\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n","\u001b[0;31mNameError\u001b[0m: name 'weekday_order' is not defined"],"ename":"NameError","evalue":"name 'weekday_order' is not defined","output_type":"error"}],"execution_count":11},{"cell_type":"code","source":"","metadata":{"trusted":true},"outputs":[],"execution_count":null}]}