generate_prediction.ipynb
83.4 KB
{"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"name":"generate_prediction.ipynb","provenance":[],"authorship_tag":"ABX9TyOYrCpQT+Ec5qRLjFQeN2E1"},"kernelspec":{"name":"python3","display_name":"Python 3"}},"cells":[{"cell_type":"code","metadata":{"id":"TB2mZGOKD5lp","executionInfo":{"status":"ok","timestamp":1604566430089,"user_tz":-540,"elapsed":812,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}},"outputId":"c84972a0-095f-421f-82e5-777c5d9a9543","colab":{"base_uri":"https://localhost:8080/"}},"source":["from google.colab import drive\n","drive.mount('/content/gdrive/')"],"execution_count":81,"outputs":[{"output_type":"stream","text":["Drive already mounted at /content/gdrive/; to attempt to forcibly remount, call drive.mount(\"/content/gdrive/\", force_remount=True).\n"],"name":"stdout"}]},{"cell_type":"code","metadata":{"id":"6toBcxODD60f","executionInfo":{"status":"ok","timestamp":1604566433436,"user_tz":-540,"elapsed":1005,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}}},"source":["folder = '/content/gdrive/My Drive/colab_data/cap_di/'\n","weather = folder+'세종시 날씨.csv'\n","generate = folder+'세종시.csv'"],"execution_count":82,"outputs":[]},{"cell_type":"code","metadata":{"id":"kkN1rP34E7WC","executionInfo":{"status":"ok","timestamp":1604566435575,"user_tz":-540,"elapsed":744,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}}},"source":["import pandas as pd"],"execution_count":83,"outputs":[]},{"cell_type":"code","metadata":{"id":"8NENGSIfE9rH","executionInfo":{"status":"ok","timestamp":1604566437488,"user_tz":-540,"elapsed":952,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}},"outputId":"5db7a50b-dc93-48b4-85f9-6aae246f5d58","colab":{"base_uri":"https://localhost:8080/","height":204}},"source":["wt = pd.read_csv(weather,encoding='CP949')\n","wt.head()"],"execution_count":84,"outputs":[{"output_type":"execute_result","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>일시</th>\n"," <th>기온(°C)</th>\n"," <th>강수량(mm)</th>\n"," <th>습도(%)</th>\n"," <th>현지기압(hPa)</th>\n"," <th>일조(hr)</th>\n"," <th>지면온도(°C)</th>\n"," </tr>\n"," </thead>\n"," <tbody>\n"," <tr>\n"," <th>0</th>\n"," <td>2019-07-01 1:00</td>\n"," <td>22.2</td>\n"," <td>NaN</td>\n"," <td>90</td>\n"," <td>993.5</td>\n"," <td>NaN</td>\n"," <td>22.0</td>\n"," </tr>\n"," <tr>\n"," <th>1</th>\n"," <td>2019-07-01 2:00</td>\n"," <td>22.4</td>\n"," <td>NaN</td>\n"," <td>89</td>\n"," <td>993.4</td>\n"," <td>NaN</td>\n"," <td>22.2</td>\n"," </tr>\n"," <tr>\n"," <th>2</th>\n"," <td>2019-07-01 3:00</td>\n"," <td>22.3</td>\n"," <td>NaN</td>\n"," <td>90</td>\n"," <td>993.4</td>\n"," <td>NaN</td>\n"," <td>22.1</td>\n"," </tr>\n"," <tr>\n"," <th>3</th>\n"," <td>2019-07-01 4:00</td>\n"," <td>21.9</td>\n"," <td>NaN</td>\n"," <td>91</td>\n"," <td>993.4</td>\n"," <td>NaN</td>\n"," <td>21.4</td>\n"," </tr>\n"," <tr>\n"," <th>4</th>\n"," <td>2019-07-01 5:00</td>\n"," <td>21.8</td>\n"," <td>NaN</td>\n"," <td>91</td>\n"," <td>993.9</td>\n"," <td>NaN</td>\n"," <td>21.2</td>\n"," </tr>\n"," </tbody>\n","</table>\n","</div>"],"text/plain":[" 일시 기온(°C) 강수량(mm) 습도(%) 현지기압(hPa) 일조(hr) 지면온도(°C)\n","0 2019-07-01 1:00 22.2 NaN 90 993.5 NaN 22.0\n","1 2019-07-01 2:00 22.4 NaN 89 993.4 NaN 22.2\n","2 2019-07-01 3:00 22.3 NaN 90 993.4 NaN 22.1\n","3 2019-07-01 4:00 21.9 NaN 91 993.4 NaN 21.4\n","4 2019-07-01 5:00 21.8 NaN 91 993.9 NaN 21.2"]},"metadata":{"tags":[]},"execution_count":84}]},{"cell_type":"code","metadata":{"id":"YRZ9hz42FdDE","executionInfo":{"status":"ok","timestamp":1604566519702,"user_tz":-540,"elapsed":783,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}},"outputId":"bceb34af-192a-49b8-a270-e5c61e5aa53d","colab":{"base_uri":"https://localhost:8080/","height":235}},"source":["variables=[\"기온(°C)\",\"강수량(mm)\",\"습도(%)\",\"현지기압(hPa)\",\"지면온도(°C)\"]\n","wtData=wt[variables]\n","wtData.index=wt['일시']\n","wtData=wtData.fillna(-1)\n","wtData.head()"],"execution_count":87,"outputs":[{"output_type":"execute_result","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>기온(°C)</th>\n"," <th>강수량(mm)</th>\n"," <th>습도(%)</th>\n"," <th>현지기압(hPa)</th>\n"," <th>지면온도(°C)</th>\n"," </tr>\n"," <tr>\n"," <th>일시</th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," </tr>\n"," </thead>\n"," <tbody>\n"," <tr>\n"," <th>2019-07-01 1:00</th>\n"," <td>22.2</td>\n"," <td>-1.0</td>\n"," <td>90</td>\n"," <td>993.5</td>\n"," <td>22.0</td>\n"," </tr>\n"," <tr>\n"," <th>2019-07-01 2:00</th>\n"," <td>22.4</td>\n"," <td>-1.0</td>\n"," <td>89</td>\n"," <td>993.4</td>\n"," <td>22.2</td>\n"," </tr>\n"," <tr>\n"," <th>2019-07-01 3:00</th>\n"," <td>22.3</td>\n"," <td>-1.0</td>\n"," <td>90</td>\n"," <td>993.4</td>\n"," <td>22.1</td>\n"," </tr>\n"," <tr>\n"," <th>2019-07-01 4:00</th>\n"," <td>21.9</td>\n"," <td>-1.0</td>\n"," <td>91</td>\n"," <td>993.4</td>\n"," <td>21.4</td>\n"," </tr>\n"," <tr>\n"," <th>2019-07-01 5:00</th>\n"," <td>21.8</td>\n"," <td>-1.0</td>\n"," <td>91</td>\n"," <td>993.9</td>\n"," <td>21.2</td>\n"," </tr>\n"," </tbody>\n","</table>\n","</div>"],"text/plain":[" 기온(°C) 강수량(mm) 습도(%) 현지기압(hPa) 지면온도(°C)\n","일시 \n","2019-07-01 1:00 22.2 -1.0 90 993.5 22.0\n","2019-07-01 2:00 22.4 -1.0 89 993.4 22.2\n","2019-07-01 3:00 22.3 -1.0 90 993.4 22.1\n","2019-07-01 4:00 21.9 -1.0 91 993.4 21.4\n","2019-07-01 5:00 21.8 -1.0 91 993.9 21.2"]},"metadata":{"tags":[]},"execution_count":87}]},{"cell_type":"code","metadata":{"id":"4DGaculbN3PN","executionInfo":{"status":"ok","timestamp":1604566530129,"user_tz":-540,"elapsed":954,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}},"outputId":"c3e40056-08ac-49e6-a70f-fe1bf5b34373","colab":{"base_uri":"https://localhost:8080/"}},"source":["print(wtData)"],"execution_count":88,"outputs":[{"output_type":"stream","text":[" 기온(°C) 강수량(mm) 습도(%) 현지기압(hPa) 지면온도(°C)\n","일시 \n","2019-07-01 1:00 22.2 -1.0 90 993.5 22.0\n","2019-07-01 2:00 22.4 -1.0 89 993.4 22.2\n","2019-07-01 3:00 22.3 -1.0 90 993.4 22.1\n","2019-07-01 4:00 21.9 -1.0 91 993.4 21.4\n","2019-07-01 5:00 21.8 -1.0 91 993.9 21.2\n","... ... ... ... ... ...\n","2020-06-29 20:00 20.0 6.1 93 986.6 21.2\n","2020-06-29 21:00 19.9 11.1 94 984.7 20.9\n","2020-06-29 22:00 20.2 6.0 94 983.4 20.9\n","2020-06-29 23:00 20.2 5.1 94 981.2 20.7\n","2020-06-30 0:00 20.3 2.0 91 979.8 20.6\n","\n","[8760 rows x 5 columns]\n"],"name":"stdout"}]},{"cell_type":"code","metadata":{"id":"6m7FW6rLFXBP","executionInfo":{"status":"ok","timestamp":1604566533078,"user_tz":-540,"elapsed":776,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}},"outputId":"b89702a3-68a3-4d1a-e82d-620d1abe4fa5","colab":{"base_uri":"https://localhost:8080/","height":204}},"source":["gnt=pd.read_csv(generate,encoding='CP949')\n","gnt.head()"],"execution_count":89,"outputs":[{"output_type":"execute_result","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>일자</th>\n"," <th>1:00</th>\n"," <th>2:00</th>\n"," <th>3:00</th>\n"," <th>4:00</th>\n"," <th>5:00</th>\n"," <th>6:00</th>\n"," <th>7:00</th>\n"," <th>8:00</th>\n"," <th>9:00</th>\n"," <th>10:00</th>\n"," <th>11:00</th>\n"," <th>12:00</th>\n"," <th>13:00</th>\n"," <th>14:00</th>\n"," <th>15:00</th>\n"," <th>16:00</th>\n"," <th>17:00</th>\n"," <th>18:00</th>\n"," <th>19:00</th>\n"," <th>20:00</th>\n"," <th>21:00</th>\n"," <th>22:00</th>\n"," <th>23:00</th>\n"," <th>0:00</th>\n"," </tr>\n"," </thead>\n"," <tbody>\n"," <tr>\n"," <th>0</th>\n"," <td>2019-07-01</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>360</td>\n"," <td>6000</td>\n"," <td>92880</td>\n"," <td>244560</td>\n"," <td>357480</td>\n"," <td>464880</td>\n"," <td>720840</td>\n"," <td>744000</td>\n"," <td>532200</td>\n"," <td>462240</td>\n"," <td>433200</td>\n"," <td>348120</td>\n"," <td>336720</td>\n"," <td>109920</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," </tr>\n"," <tr>\n"," <th>1</th>\n"," <td>2019-07-02</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>120</td>\n"," <td>81720</td>\n"," <td>313800</td>\n"," <td>625680</td>\n"," <td>831360</td>\n"," <td>1062240</td>\n"," <td>861240</td>\n"," <td>849600</td>\n"," <td>785280</td>\n"," <td>915960</td>\n"," <td>843240</td>\n"," <td>565320</td>\n"," <td>178080</td>\n"," <td>115800</td>\n"," <td>6720</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," </tr>\n"," <tr>\n"," <th>2</th>\n"," <td>2019-07-03</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>54480</td>\n"," <td>219720</td>\n"," <td>320400</td>\n"," <td>602400</td>\n"," <td>805440</td>\n"," <td>917280</td>\n"," <td>815760</td>\n"," <td>569520</td>\n"," <td>613080</td>\n"," <td>726480</td>\n"," <td>510120</td>\n"," <td>313440</td>\n"," <td>68400</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," </tr>\n"," <tr>\n"," <th>3</th>\n"," <td>2019-07-04</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>120</td>\n"," <td>65160</td>\n"," <td>310560</td>\n"," <td>623400</td>\n"," <td>877440</td>\n"," <td>1044240</td>\n"," <td>1170240</td>\n"," <td>1202400</td>\n"," <td>1159920</td>\n"," <td>1071600</td>\n"," <td>680280</td>\n"," <td>467640</td>\n"," <td>267000</td>\n"," <td>130560</td>\n"," <td>2760</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," </tr>\n"," <tr>\n"," <th>4</th>\n"," <td>2019-07-05</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>57120</td>\n"," <td>310320</td>\n"," <td>520320</td>\n"," <td>847800</td>\n"," <td>1031760</td>\n"," <td>1145280</td>\n"," <td>1186680</td>\n"," <td>1146360</td>\n"," <td>970200</td>\n"," <td>664920</td>\n"," <td>506520</td>\n"," <td>304200</td>\n"," <td>64560</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," </tr>\n"," </tbody>\n","</table>\n","</div>"],"text/plain":[" 일자 1:00 2:00 3:00 4:00 ... 20:00 21:00 22:00 23:00 0:00\n","0 2019-07-01 0 0 0 0 ... 0 0 0 0 0\n","1 2019-07-02 0 0 0 0 ... 6720 0 0 0 0\n","2 2019-07-03 0 0 0 0 ... 0 0 0 0 0\n","3 2019-07-04 0 0 0 0 ... 2760 0 0 0 0\n","4 2019-07-05 0 0 0 0 ... 0 0 0 0 0\n","\n","[5 rows x 25 columns]"]},"metadata":{"tags":[]},"execution_count":89}]},{"cell_type":"code","metadata":{"id":"okcsLKdqGqSZ","executionInfo":{"status":"ok","timestamp":1604566551053,"user_tz":-540,"elapsed":1143,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}},"outputId":"c93a108c-fc46-4258-ea0b-9c71a87611b1","colab":{"base_uri":"https://localhost:8080/","height":235}},"source":["GNTvariables=['1:00','2:00','3:00','4:00','5:00','6:00','7:00','8:00','9:00','10:00','11:00','12:00','13:00','14:00','15:00','16:00','17:00','18:00','19:00','20:00','21:00','22:00','23:00','0:00']\n","tempGNT=gnt[GNTvariables]\n","tempGNT.index=gnt['일자']\n","tempGNT.head()"],"execution_count":90,"outputs":[{"output_type":"execute_result","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>1:00</th>\n"," <th>2:00</th>\n"," <th>3:00</th>\n"," <th>4:00</th>\n"," <th>5:00</th>\n"," <th>6:00</th>\n"," <th>7:00</th>\n"," <th>8:00</th>\n"," <th>9:00</th>\n"," <th>10:00</th>\n"," <th>11:00</th>\n"," <th>12:00</th>\n"," <th>13:00</th>\n"," <th>14:00</th>\n"," <th>15:00</th>\n"," <th>16:00</th>\n"," <th>17:00</th>\n"," <th>18:00</th>\n"," <th>19:00</th>\n"," <th>20:00</th>\n"," <th>21:00</th>\n"," <th>22:00</th>\n"," <th>23:00</th>\n"," <th>0:00</th>\n"," </tr>\n"," <tr>\n"," <th>일자</th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," </tr>\n"," </thead>\n"," <tbody>\n"," <tr>\n"," <th>2019-07-01</th>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>360</td>\n"," <td>6000</td>\n"," <td>92880</td>\n"," <td>244560</td>\n"," <td>357480</td>\n"," <td>464880</td>\n"," <td>720840</td>\n"," <td>744000</td>\n"," <td>532200</td>\n"," <td>462240</td>\n"," <td>433200</td>\n"," <td>348120</td>\n"," <td>336720</td>\n"," <td>109920</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," </tr>\n"," <tr>\n"," <th>2019-07-02</th>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>120</td>\n"," <td>81720</td>\n"," <td>313800</td>\n"," <td>625680</td>\n"," <td>831360</td>\n"," <td>1062240</td>\n"," <td>861240</td>\n"," <td>849600</td>\n"," <td>785280</td>\n"," <td>915960</td>\n"," <td>843240</td>\n"," <td>565320</td>\n"," <td>178080</td>\n"," <td>115800</td>\n"," <td>6720</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," </tr>\n"," <tr>\n"," <th>2019-07-03</th>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>54480</td>\n"," <td>219720</td>\n"," <td>320400</td>\n"," <td>602400</td>\n"," <td>805440</td>\n"," <td>917280</td>\n"," <td>815760</td>\n"," <td>569520</td>\n"," <td>613080</td>\n"," <td>726480</td>\n"," <td>510120</td>\n"," <td>313440</td>\n"," <td>68400</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," </tr>\n"," <tr>\n"," <th>2019-07-04</th>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>120</td>\n"," <td>65160</td>\n"," <td>310560</td>\n"," <td>623400</td>\n"," <td>877440</td>\n"," <td>1044240</td>\n"," <td>1170240</td>\n"," <td>1202400</td>\n"," <td>1159920</td>\n"," <td>1071600</td>\n"," <td>680280</td>\n"," <td>467640</td>\n"," <td>267000</td>\n"," <td>130560</td>\n"," <td>2760</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," </tr>\n"," <tr>\n"," <th>2019-07-05</th>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>57120</td>\n"," <td>310320</td>\n"," <td>520320</td>\n"," <td>847800</td>\n"," <td>1031760</td>\n"," <td>1145280</td>\n"," <td>1186680</td>\n"," <td>1146360</td>\n"," <td>970200</td>\n"," <td>664920</td>\n"," <td>506520</td>\n"," <td>304200</td>\n"," <td>64560</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," <td>0</td>\n"," </tr>\n"," </tbody>\n","</table>\n","</div>"],"text/plain":[" 1:00 2:00 3:00 4:00 5:00 ... 20:00 21:00 22:00 23:00 0:00\n","일자 ... \n","2019-07-01 0 0 0 0 0 ... 0 0 0 0 0\n","2019-07-02 0 0 0 0 0 ... 6720 0 0 0 0\n","2019-07-03 0 0 0 0 0 ... 0 0 0 0 0\n","2019-07-04 0 0 0 0 0 ... 2760 0 0 0 0\n","2019-07-05 0 0 0 0 0 ... 0 0 0 0 0\n","\n","[5 rows x 24 columns]"]},"metadata":{"tags":[]},"execution_count":90}]},{"cell_type":"code","metadata":{"id":"tCCfCxurIETg","executionInfo":{"status":"ok","timestamp":1604566559131,"user_tz":-540,"elapsed":926,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}},"outputId":"88c8623e-bbb1-4113-bdfe-e77337d5136d","colab":{"base_uri":"https://localhost:8080/"}},"source":["print(tempGNT.columns)"],"execution_count":91,"outputs":[{"output_type":"stream","text":["Index(['1:00', '2:00', '3:00', '4:00', '5:00', '6:00', '7:00', '8:00', '9:00',\n"," '10:00', '11:00', '12:00', '13:00', '14:00', '15:00', '16:00', '17:00',\n"," '18:00', '19:00', '20:00', '21:00', '22:00', '23:00', '0:00'],\n"," dtype='object')\n"],"name":"stdout"}]},{"cell_type":"code","metadata":{"id":"i7DnCIAaM_lq","executionInfo":{"status":"ok","timestamp":1604566561153,"user_tz":-540,"elapsed":743,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}}},"source":["temp=pd.DataFrame(columns=['발전량'])"],"execution_count":92,"outputs":[]},{"cell_type":"code","metadata":{"id":"iCbGuA5oKX46","executionInfo":{"status":"ok","timestamp":1604566562528,"user_tz":-540,"elapsed":932,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}}},"source":["t={}"],"execution_count":93,"outputs":[]},{"cell_type":"code","metadata":{"id":"vsPgEOdzL63t","executionInfo":{"status":"ok","timestamp":1604566564001,"user_tz":-540,"elapsed":777,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}},"outputId":"f9762214-556a-4529-8313-67471f765642","colab":{"base_uri":"https://localhost:8080/"}},"source":["print(tempGNT['0:00']['2019-07-01'])"],"execution_count":94,"outputs":[{"output_type":"stream","text":["0\n"],"name":"stdout"}]},{"cell_type":"code","metadata":{"id":"DY2K5OagIB8A","executionInfo":{"status":"ok","timestamp":1604566565211,"user_tz":-540,"elapsed":811,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}}},"source":["for date in tempGNT.index:\n"," for hour in tempGNT.columns:\n"," t[date+' '+hour]=tempGNT[hour][date]"],"execution_count":95,"outputs":[]},{"cell_type":"code","metadata":{"id":"9jwM6hWaN-lu","executionInfo":{"status":"ok","timestamp":1604566567074,"user_tz":-540,"elapsed":830,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}},"outputId":"62f6746c-06ef-42a8-fccc-de6e5bd87603","colab":{"base_uri":"https://localhost:8080/"}},"source":["print(t.values())"],"execution_count":96,"outputs":[{"output_type":"stream","text":["dict_values([0, 0, 0, 0, 0, 360, 6000, 92880, 244560, 357480, 464880, 720840, 744000, 532200, 462240, 433200, 348120, 336720, 109920, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 81720, 313800, 625680, 831360, 1062240, 861240, 849600, 785280, 915960, 843240, 565320, 178080, 115800, 6720, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54480, 219720, 320400, 602400, 805440, 917280, 815760, 569520, 613080, 726480, 510120, 313440, 68400, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 65160, 310560, 623400, 877440, 1044240, 1170240, 1202400, 1159920, 1071600, 680280, 467640, 267000, 130560, 2760, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57120, 310320, 520320, 847800, 1031760, 1145280, 1186680, 1146360, 970200, 664920, 506520, 304200, 64560, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 56880, 299280, 612240, 883320, 1074720, 1195320, 1219560, 1181520, 1073400, 874560, 622440, 308400, 60600, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 960, 85200, 246720, 429960, 864720, 880440, 881760, 894960, 1055400, 954720, 766680, 402480, 214440, 43920, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40080, 217800, 583680, 865920, 711000, 1078680, 986640, 980880, 694920, 531960, 346560, 282840, 99120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43920, 297720, 627240, 907680, 1063320, 1017240, 1252440, 957000, 664800, 760320, 552480, 332040, 111960, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 65520, 224160, 335160, 244920, 302160, 316800, 193920, 266040, 162600, 185040, 177360, 111360, 23040, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37680, 148680, 200160, 342120, 275640, 242400, 474720, 380520, 157560, 148320, 78480, 480, 26280, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27120, 244200, 546360, 552720, 746400, 1025040, 911400, 885840, 817320, 456360, 237360, 161760, 103920, 1920, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 59880, 222960, 241080, 416520, 545040, 866520, 905280, 856200, 320160, 387480, 555720, 342480, 138000, 6240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 71160, 270720, 541200, 772440, 763080, 606360, 979320, 863040, 575640, 336120, 445560, 233520, 98760, 480, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51480, 175200, 431760, 639840, 744840, 754440, 402120, 229080, 263760, 703680, 591120, 205680, 56760, 600, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29760, 172920, 438240, 740760, 733080, 967440, 1145880, 1061640, 835800, 683160, 291360, 124200, 43680, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 104400, 320880, 375240, 806040, 711000, 848520, 907920, 575400, 481560, 408240, 199560, 113040, 8880, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51840, 168840, 554880, 561840, 483240, 631440, 698400, 745680, 783360, 755040, 464520, 224880, 88680, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 71520, 270360, 532080, 616440, 635040, 582720, 676560, 459480, 366600, 390360, 305880, 258720, 66480, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 840, 35280, 111600, 313080, 415920, 690120, 879240, 560400, 366480, 150120, 162000, 139560, 98760, 13680, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36000, 98280, 132360, 99000, 114960, 444840, 459960, 317280, 327360, 111240, 24000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52680, 211080, 473880, 574320, 699360, 882600, 1099080, 994440, 1014840, 748800, 491880, 258360, 70560, 240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39120, 176880, 188160, 374160, 644040, 971760, 805440, 962280, 807720, 805560, 584760, 128880, 88320, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3480, 92520, 187320, 290040, 236640, 268440, 296880, 182520, 133920, 171960, 80160, 14400, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2280, 10080, 3000, 94080, 50160, 47640, 960, 3840, 85560, 63120, 9840, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6120, 166920, 210480, 158880, 162240, 193920, 331800, 107040, 94200, 15600, 60360, 77520, 600, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 53040, 229680, 445920, 254520, 623520, 570120, 474960, 442440, 351120, 106440, 336720, 275880, 24360, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19800, 61920, 720, 206040, 373920, 41640, 173760, 266160, 176160, 391320, 134280, 108360, 34800, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 55320, 164880, 465360, 848760, 1008120, 991800, 924480, 659160, 527520, 427200, 465480, 340920, 38880, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40560, 211800, 320520, 397080, 873000, 1099320, 864840, 930840, 474720, 438960, 412200, 282600, 70800, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63360, 267000, 471600, 392280, 443160, 612480, 633480, 592560, 494640, 865440, 528840, 168240, 18240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 33480, 258480, 429960, 473160, 471600, 269760, 596880, 522000, 479160, 431040, 387240, 301440, 44760, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 33000, 266280, 436680, 704760, 987120, 1144440, 1065600, 1195560, 1062960, 887400, 609480, 293760, 44400, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63840, 256920, 369840, 721320, 912000, 903360, 1019760, 1073040, 575520, 260880, 447120, 156120, 97560, 240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51960, 246480, 502560, 797160, 987600, 1077360, 1169880, 1139160, 1020840, 804240, 665640, 361200, 89520, 240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36840, 225480, 482160, 742920, 945600, 1101840, 1084440, 783000, 568680, 577200, 533640, 60720, 1440, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13800, 260760, 575880, 697560, 899520, 1053360, 726480, 726600, 692400, 573240, 337080, 126120, 17880, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30360, 108240, 400440, 751440, 1031760, 904080, 1141080, 1109040, 893640, 846720, 553680, 273960, 57480, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58200, 146280, 362760, 627360, 794760, 604440, 559080, 412080, 378000, 652560, 20280, 57840, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9840, 103560, 221880, 473040, 935520, 1161720, 1163160, 920160, 940680, 441120, 350520, 242880, 56640, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31920, 190080, 533160, 813360, 1011600, 1085280, 1183800, 1168560, 954600, 837840, 595560, 287160, 54840, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24840, 219240, 308520, 858840, 1064280, 1179240, 1239360, 1185000, 766560, 594600, 176520, 65280, 29400, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 24960, 111720, 181080, 309480, 612360, 544800, 425520, 105720, 76680, 58920, 11400, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27840, 256920, 584520, 785760, 937080, 852000, 673440, 749040, 719760, 641520, 177840, 34560, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16800, 242400, 564360, 669120, 761880, 889560, 955920, 1096440, 987120, 702720, 383400, 167280, 36120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14760, 103080, 170040, 309000, 191400, 206880, 242760, 189240, 214080, 516840, 162960, 14520, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 49800, 199080, 633120, 799920, 685440, 767040, 1045320, 897240, 591960, 583560, 262080, 20280, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50760, 212640, 405000, 774240, 728400, 1003560, 661680, 558360, 581640, 579120, 273720, 127200, 33240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1680, 91800, 245400, 726600, 1040640, 1139640, 1249800, 1143840, 1027560, 899520, 634320, 186720, 18480, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48120, 213840, 491160, 638040, 1044720, 1176840, 1182840, 1093560, 989040, 729720, 514560, 218760, 56640, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27360, 227760, 531360, 807720, 996480, 1172040, 1194360, 1069320, 1002600, 732840, 400920, 215160, 40320, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31920, 166080, 379200, 468600, 98880, 795840, 1027680, 571440, 976440, 530160, 483480, 193560, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11520, 121080, 275280, 729120, 656400, 606120, 335520, 273360, 322920, 860880, 577920, 217800, 26160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9240, 138840, 324600, 498480, 805680, 754200, 809160, 1070760, 1027200, 590160, 267960, 52680, 33960, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13560, 131520, 255720, 268680, 359280, 529920, 739440, 640320, 495360, 307080, 204840, 193200, 23880, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12600, 269760, 579000, 748440, 993240, 1212600, 1250040, 1191360, 837960, 800640, 591000, 181320, 15120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19560, 255960, 580920, 876120, 1084080, 1197840, 1116960, 1179720, 1020960, 596640, 260520, 224280, 26160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 840, 25200, 354480, 307440, 291360, 250320, 382680, 337680, 426120, 450720, 252360, 30840, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41040, 214080, 382080, 700080, 715560, 870960, 997080, 764640, 488520, 429960, 206040, 10080, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3840, 104640, 255600, 373560, 409560, 707520, 402480, 399960, 137400, 155040, 148680, 263880, 54360, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 42720, 193440, 425040, 931080, 1029960, 834000, 704280, 980400, 828720, 624840, 275160, 167160, 18360, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18960, 262080, 619800, 888360, 742080, 805080, 1036560, 739200, 900360, 762600, 462480, 218160, 7920, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12120, 103680, 185280, 357360, 869400, 797640, 837840, 648240, 518040, 356880, 319200, 132480, 1560, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10440, 185760, 308760, 447240, 573600, 773760, 773280, 718080, 364200, 258960, 143520, 120720, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 33960, 172080, 182400, 294720, 319560, 324360, 258240, 221520, 167280, 118080, 25920, 600, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9360, 154560, 165120, 436320, 489000, 776040, 593280, 219720, 80400, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 52560, 162000, 343080, 252960, 385800, 444720, 385200, 92400, 4440, 1200, 480, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1560, 110760, 315960, 581280, 518880, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 472680, 498480, 639000, 377160, 382080, 116160, 14880, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29880, 133320, 226560, 282480, 297480, 239040, 278520, 240360, 176520, 163560, 39120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1200, 139800, 285240, 652440, 729360, 836280, 504720, 756240, 396600, 425280, 298560, 140400, 13560, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 5160, 121440, 220200, 275640, 283320, 252120, 378720, 373080, 265320, 60600, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4560, 112080, 169440, 200160, 271920, 305040, 341160, 363360, 288360, 202320, 66840, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10800, 179760, 597960, 907200, 1114800, 1226880, 1255080, 1198800, 1061040, 825600, 508320, 150480, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 39720, 136560, 291480, 725640, 878880, 1165200, 527280, 192240, 57720, 88560, 6960, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360, 185040, 438960, 529320, 1029360, 1037760, 1223160, 947520, 1054200, 821160, 494760, 127320, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5760, 110040, 465000, 811800, 1018680, 1132200, 923040, 1116480, 1023840, 756600, 477720, 135240, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9480, 265800, 633240, 934560, 1138200, 1248120, 1280760, 1225080, 1076040, 838680, 515520, 112200, 720, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9000, 259320, 618000, 917280, 1106280, 1220640, 1258080, 1211640, 1101840, 878880, 541080, 142800, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7920, 248640, 618960, 924480, 1123080, 1230000, 1058040, 947160, 953760, 536160, 447240, 67920, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 56760, 364440, 476160, 743640, 783240, 443520, 381840, 334800, 172200, 91560, 15000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1440, 15240, 57120, 138720, 81000, 58920, 179640, 98640, 31440, 240, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 720, 240, 23760, 24720, 53880, 35400, 37560, 110160, 29040, 1200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 231000, 635280, 947040, 737040, 404880, 545400, 408960, 539280, 405480, 214680, 152760, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54960, 187800, 345000, 921600, 1242120, 1231800, 1037880, 894000, 776280, 444720, 96120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 77400, 211080, 262560, 512880, 936960, 981480, 904080, 645480, 367320, 171720, 25800, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 117000, 397440, 591960, 877680, 630000, 543120, 470880, 432600, 455640, 225960, 50280, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12840, 164160, 556200, 764640, 1101960, 1095720, 1097880, 967800, 943680, 548880, 215760, 45600, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 189600, 367560, 654600, 504120, 970440, 756840, 503880, 710880, 530400, 351960, 95760, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2040, 192000, 545280, 843840, 1051320, 1085520, 1199640, 1070160, 757680, 717960, 392760, 67920, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 720, 167760, 525120, 835080, 1070520, 1169400, 1203240, 1130040, 945240, 709800, 378120, 66720, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 76320, 219840, 390600, 520440, 506040, 426600, 339960, 266280, 100080, 3480, 1920, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 360, 14520, 61560, 38760, 43320, 41160, 69360, 19920, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360, 3120, 502680, 911640, 992160, 750360, 928560, 579840, 582360, 316080, 258000, 50640, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2160, 92280, 218640, 278640, 378840, 850320, 942960, 785520, 608520, 349200, 21240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 29400, 159600, 153240, 171600, 277440, 340800, 153960, 306720, 233280, 5640, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 133320, 479280, 607800, 1054080, 1173240, 936840, 870480, 865680, 511680, 227760, 20520, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1080, 80160, 134280, 218520, 118680, 114960, 125400, 94440, 62400, 1800, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50400, 122400, 752280, 996000, 907800, 1068840, 903360, 974520, 788400, 415080, 45480, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 229920, 622920, 928440, 1109040, 1219080, 1199520, 1168920, 897000, 577200, 335280, 41400, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11160, 196560, 326640, 327480, 587880, 601320, 328680, 468120, 386880, 198000, 1920, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35640, 132120, 590520, 1014120, 1111080, 1130160, 1082520, 917040, 663000, 316440, 25800, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 173040, 540360, 858000, 1069680, 1171920, 1186560, 1103280, 964560, 683280, 325440, 24120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 180720, 553920, 831480, 1050600, 1181400, 1194120, 1121880, 937440, 633720, 337080, 24240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360, 167160, 327120, 659160, 646680, 454200, 842160, 771960, 485400, 613440, 318960, 29520, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 84240, 401400, 859200, 900720, 1120680, 835920, 668880, 944040, 719520, 312840, 17760, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150240, 531360, 832800, 1036320, 1024080, 1096200, 842760, 795600, 559920, 209280, 27720, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27120, 183720, 385320, 492360, 739800, 685560, 451800, 678600, 607200, 276360, 17160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6960, 130440, 239400, 453840, 696120, 579360, 516360, 659280, 387480, 168000, 7080, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 151080, 541440, 842160, 1049040, 1135200, 928200, 913560, 836760, 593280, 291120, 8880, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9480, 116280, 193920, 325320, 875520, 1157160, 1085400, 910080, 589440, 240240, 9240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41520, 378960, 794760, 1025760, 1140600, 1139520, 1061760, 880800, 587040, 255600, 7560, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 131160, 523560, 836880, 1027200, 1119000, 1127880, 1066320, 889680, 626280, 252000, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38400, 148800, 405120, 364920, 377640, 385920, 270960, 199440, 117600, 52680, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 55560, 172920, 448680, 924240, 1099320, 1106040, 1036920, 854160, 524040, 155880, 13200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 84720, 460320, 770520, 1004160, 1047240, 1027800, 351840, 508560, 285720, 94680, 4920, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38880, 477960, 610440, 943080, 1073040, 1021800, 1071960, 846840, 468120, 168120, 6000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 118920, 543360, 856920, 1062120, 1165080, 1181520, 1053360, 862080, 615000, 237240, 1080, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 91920, 447360, 813840, 1027080, 1005600, 1144920, 1056120, 886560, 359400, 123120, 1920, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 55200, 315720, 669960, 901080, 477720, 1212840, 812640, 844800, 208920, 81000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 98040, 539880, 853920, 1051680, 1165560, 1134240, 927960, 916320, 634320, 218520, 360, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63720, 408960, 792360, 1001040, 1106400, 1114680, 922800, 700320, 496680, 173160, 1200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1200, 65640, 229080, 885240, 605400, 1059840, 941760, 783960, 511320, 165480, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70320, 336600, 460920, 587040, 564960, 475200, 543720, 368760, 246600, 85920, 5280, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5400, 112680, 229920, 554760, 969480, 1006080, 922560, 707040, 431160, 81480, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49080, 459960, 791040, 1006680, 1112040, 1145640, 1074120, 843960, 507840, 168360, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41280, 408480, 739800, 830760, 930960, 500040, 441000, 480120, 350160, 171840, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17040, 139320, 336480, 946200, 1128120, 1131840, 999000, 604080, 423960, 124200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 90360, 617880, 555600, 712080, 884520, 958080, 772800, 535320, 156360, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27960, 492720, 817800, 1031880, 1139040, 1144680, 1053720, 867600, 583560, 162360, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18600, 464280, 796200, 1005360, 1100040, 1090320, 1015200, 835920, 559080, 146040, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4080, 135960, 358440, 274440, 422640, 293400, 309480, 410160, 348120, 89040, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1560, 78960, 239520, 360480, 187080, 93480, 557040, 415560, 378120, 98400, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 22920, 403080, 707880, 648480, 648240, 744480, 728280, 794760, 513720, 123960, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 960, 6480, 32640, 27000, 56520, 200400, 327480, 172920, 7920, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7920, 392280, 768480, 1036080, 1197840, 1216560, 1137000, 932040, 624120, 122880, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16800, 237960, 363120, 591480, 778080, 863040, 352320, 511440, 387960, 82800, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6480, 152520, 397920, 504480, 724080, 674160, 896040, 598800, 359640, 83880, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25080, 25080, 11160, 31680, 8160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27840, 127320, 283560, 313440, 403560, 649680, 240120, 94920, 22440, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3120, 334800, 789960, 728880, 358920, 666000, 477960, 434640, 252600, 55080, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 480, 308280, 791760, 1046280, 1157040, 1169160, 1094400, 914280, 537240, 79320, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3600, 250080, 625680, 926520, 949440, 870720, 748080, 561720, 195000, 52920, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3720, 291240, 716040, 846120, 1086480, 1090920, 1010040, 839400, 545760, 54120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2880, 265560, 642000, 655080, 772800, 614160, 747600, 584400, 256680, 74400, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2520, 192960, 616200, 841320, 930720, 984840, 767880, 486960, 220200, 2520, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 47160, 226800, 337560, 313800, 330600, 317160, 297960, 179520, 56880, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 840, 132240, 392040, 742320, 1069320, 1090560, 1027200, 847560, 520680, 40080, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 172200, 571920, 567960, 658080, 584280, 474960, 362400, 226440, 46080, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 130080, 497880, 938520, 1083120, 1099800, 1022880, 746400, 472320, 44040, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 181680, 760440, 994920, 1123200, 1171920, 1076280, 880920, 538800, 33240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 840, 169080, 660120, 801720, 690600, 873600, 1005960, 813960, 493200, 45000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 113880, 163200, 153120, 144600, 98640, 57960, 30000, 4320, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85800, 593760, 615720, 1065720, 1169040, 912600, 452880, 337200, 27960, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360, 87840, 244680, 667560, 485280, 431040, 374520, 148560, 4440, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 112800, 668160, 921480, 1089360, 1123440, 1039080, 805800, 257520, 45240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105360, 715560, 969000, 1110240, 1127760, 1025760, 789360, 379080, 38280, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 100560, 678000, 920160, 1041120, 1101600, 1112760, 925320, 539160, 27240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32400, 460560, 686160, 895920, 701520, 278040, 72120, 720, 7680, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 89640, 451320, 817920, 921720, 973560, 884280, 676560, 366960, 51960, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39120, 118560, 564480, 746280, 823200, 702480, 585360, 312240, 56400, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 87600, 172200, 310320, 505320, 488280, 333720, 373560, 209280, 52800, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2880, 68880, 93960, 127800, 61200, 406800, 315960, 201840, 59400, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 60000, 652920, 973440, 1134600, 1184400, 1099080, 891600, 500160, 20760, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54000, 563040, 899880, 787560, 1008600, 741240, 495960, 296400, 51240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68880, 547080, 894840, 1081320, 1111080, 1084560, 917640, 455160, 46680, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47520, 450840, 827640, 940320, 948240, 872520, 593880, 264240, 76080, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 79560, 371040, 776280, 933960, 967680, 898920, 719880, 373800, 45120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 25800, 72600, 141720, 83040, 480, 100560, 33000, 360, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26760, 171360, 286920, 413760, 694800, 542280, 843120, 308040, 76920, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41280, 605880, 966360, 1095480, 1125600, 1075440, 851760, 467520, 45720, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1320, 184080, 844680, 987120, 726840, 450840, 439560, 269880, 69120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63240, 214680, 363480, 417120, 472080, 509760, 438240, 283680, 60840, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38640, 185040, 353160, 540960, 709320, 687480, 766800, 428760, 56880, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 56280, 235800, 357000, 352560, 326760, 426360, 337080, 322080, 70800, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38040, 119520, 182760, 212760, 244680, 564840, 874320, 534840, 51240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1320, 57000, 231840, 507480, 899880, 908760, 269880, 107880, 40560, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6000, 30240, 75240, 72840, 142920, 121440, 10200, 21600, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72600, 512520, 861360, 823440, 791520, 797760, 718200, 536280, 64080, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51720, 484440, 816480, 966240, 1001880, 951720, 857760, 490200, 67200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54600, 94680, 153240, 129240, 182880, 139440, 105240, 26040, 4200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 43440, 152400, 316560, 644040, 158520, 47160, 1560, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18480, 444120, 779280, 990360, 1176840, 1192200, 1014000, 661800, 52440, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7080, 198960, 759600, 872280, 669240, 635880, 510240, 151560, 18360, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 39720, 141240, 181680, 278160, 252480, 142080, 21360, 240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 73800, 308160, 442680, 418320, 700200, 838200, 728520, 523320, 83160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 87960, 182400, 163200, 410520, 792000, 811200, 696840, 508680, 73440, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30960, 480960, 930240, 1068120, 1135080, 990960, 730080, 321600, 84120, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41520, 81600, 93360, 125160, 83640, 58200, 9840, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 720, 7680, 14280, 1440, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52920, 120960, 284400, 53400, 32760, 7920, 960, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 87600, 430440, 795720, 954360, 1060080, 1007520, 815160, 503640, 138000, 720, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 81960, 449640, 707280, 969480, 1109760, 1038240, 826320, 469440, 116160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 73800, 447480, 624480, 919440, 542640, 728040, 387360, 318120, 143040, 960, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63360, 266400, 784680, 821520, 1133760, 1123320, 619560, 670560, 168480, 1440, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31440, 157320, 502920, 384000, 405000, 766320, 821640, 699000, 160320, 240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 83520, 411840, 720240, 751200, 1026000, 887280, 673440, 376680, 119760, 1560, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 67440, 607200, 842280, 555240, 997920, 1153320, 966720, 692160, 188040, 1320, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 42360, 679200, 725280, 955080, 1143840, 1089000, 1010880, 713280, 222360, 5400, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 60840, 173040, 497160, 649680, 869160, 1017720, 892200, 612720, 195960, 6120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 66480, 523920, 895800, 1100880, 1172640, 1124640, 1011840, 753720, 227520, 1080, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 83400, 198960, 378120, 479400, 537360, 853680, 567600, 190320, 16560, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72720, 486000, 573600, 1009320, 1165440, 1138200, 834720, 359880, 106080, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70560, 587760, 991800, 1181640, 1193520, 1221720, 1060800, 790200, 275520, 1200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 960, 32280, 46920, 92160, 52440, 123240, 112200, 93000, 29160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10560, 563520, 893760, 1070040, 1173960, 1125240, 972240, 688560, 218040, 4800, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 100920, 507480, 865920, 1001160, 1155480, 1085400, 886440, 596640, 202320, 7560, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 91200, 386160, 539520, 423840, 455760, 580200, 366840, 213000, 113880, 5160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62880, 449520, 745680, 1028040, 1074120, 861360, 360240, 337200, 143640, 6480, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360, 29040, 92640, 157200, 130560, 111480, 87840, 33240, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64080, 171840, 281280, 373800, 645960, 346800, 519600, 309240, 214440, 3840, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30240, 160680, 446640, 808080, 892920, 637680, 457560, 279960, 161160, 15000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 145080, 615000, 972840, 1160520, 1172880, 461280, 291240, 150480, 103080, 1440, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 80400, 141960, 234360, 432000, 944280, 672240, 344640, 225360, 110040, 6120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16560, 103800, 182520, 373920, 370320, 513000, 636000, 335160, 170520, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105000, 382560, 653880, 671400, 611400, 723120, 585000, 605760, 300840, 28200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 197640, 690120, 994320, 1185600, 1262520, 1287240, 711120, 618720, 406320, 23880, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360, 225720, 727080, 1025040, 1212600, 1279440, 1224840, 1059720, 771960, 362280, 34320, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27840, 138360, 510840, 1121400, 1304160, 1341480, 1195560, 922920, 515160, 32640, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 193680, 593040, 986400, 1164840, 1182480, 886440, 690480, 448680, 200760, 39720, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52920, 515880, 821640, 1025280, 1131360, 1074720, 707280, 288000, 77400, 2160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 147720, 595560, 878160, 1214760, 1297920, 1266120, 1127280, 864000, 484560, 49320, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 600, 303960, 758160, 1071840, 1242840, 1295520, 1280880, 1143360, 876360, 461280, 63960, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1080, 175920, 515640, 909960, 1086720, 1103040, 1093560, 1029480, 846720, 470640, 57360, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 960, 263880, 694920, 992640, 1164360, 1208520, 1174920, 984120, 663120, 244200, 48000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 3960, 28440, 83760, 81360, 24960, 71280, 3240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29040, 174000, 340680, 376680, 320880, 382080, 321360, 260640, 180840, 25440, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15720, 67200, 131640, 223680, 392160, 1085880, 1004760, 759720, 409680, 73200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1800, 244920, 649200, 941520, 1126680, 872880, 239760, 28560, 137040, 79920, 960, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 9600, 81120, 184080, 295560, 535440, 536760, 379080, 289320, 840, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360, 2040, 35520, 109080, 271680, 920160, 773160, 819720, 221160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29160, 138720, 832080, 1300320, 1375920, 1353120, 1212960, 959880, 589320, 121080, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5880, 128640, 274680, 397200, 692160, 953400, 1236720, 966480, 725520, 362040, 72120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10560, 252240, 609600, 910920, 1102080, 1156560, 1122600, 971520, 708000, 370320, 80280, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18000, 309600, 368520, 393720, 408480, 980760, 1051080, 748320, 417480, 142200, 4200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16680, 260760, 609960, 828960, 893520, 1114680, 1328040, 1055400, 574440, 331800, 19440, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32880, 375960, 825720, 1116720, 1270320, 1348680, 1325520, 1207560, 964080, 587040, 132360, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34680, 422760, 815040, 1092960, 1173600, 1162560, 967080, 1125960, 718800, 310560, 53280, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360, 2040, 1800, 1560, 25080, 360, 240, 240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6600, 167040, 676080, 1060800, 1232640, 1313280, 584520, 773160, 771240, 442080, 116880, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28560, 372600, 731040, 988800, 594600, 918000, 1001880, 1224360, 803280, 568080, 139920, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4800, 65400, 78600, 137880, 140880, 111360, 105360, 149760, 108840, 33360, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1320, 124080, 413040, 616560, 689160, 741720, 774000, 891000, 864960, 390960, 139200, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 480, 102480, 230040, 392880, 860280, 1037760, 614400, 478080, 259560, 132720, 19440, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 53400, 425400, 843360, 1099320, 1299960, 1375080, 1341000, 1213560, 951360, 587880, 163080, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12840, 309000, 705480, 838680, 985800, 1123680, 708240, 480840, 480960, 239160, 51840, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27720, 186000, 569640, 1083960, 1207560, 1121280, 1200960, 1014840, 650760, 143400, 109800, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38400, 429480, 811680, 1135920, 1327320, 1386480, 1385640, 1230600, 994560, 645720, 188280, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 101760, 456120, 843240, 1182360, 1337400, 1323000, 1287840, 1093920, 903960, 578640, 164040, 720, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1680, 180840, 334440, 508800, 312000, 204960, 181800, 483120, 228600, 158400, 31560, 7800, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57840, 408840, 797400, 1076760, 1252800, 1328040, 1293840, 1178280, 940080, 595320, 180120, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85680, 387600, 648480, 832440, 953400, 958920, 377880, 560400, 269280, 107040, 5520, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14280, 47160, 101880, 213000, 201360, 48720, 40920, 156480, 5520, 480, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 148200, 563640, 950280, 1226400, 1381440, 1436880, 1398240, 1275840, 1028040, 676560, 216600, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 128520, 509880, 867240, 1130160, 1271880, 1345440, 1306080, 1172160, 922920, 570960, 187920, 1680, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58680, 395640, 555720, 452640, 711240, 904920, 1039320, 948480, 501240, 546720, 153840, 6840, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 150120, 569520, 943200, 1193160, 1343040, 1403400, 1344960, 989400, 954720, 604080, 199680, 1200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 131400, 440640, 659640, 756000, 832560, 1207080, 1070880, 762360, 594600, 616320, 254520, 1920, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 146640, 556080, 944280, 1202160, 1359960, 1426200, 1375680, 1234200, 990480, 605280, 201000, 1080, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30000, 149280, 255840, 281640, 166920, 232200, 225000, 149160, 211320, 307920, 99840, 960, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29640, 203760, 832200, 1139280, 1289760, 1339200, 1323240, 1202760, 957360, 603720, 205200, 600, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 66840, 37080, 40080, 612360, 1228680, 1335480, 1215000, 792000, 424320, 260160, 165720, 6240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 155520, 561960, 918960, 1146960, 1276680, 1329480, 1290240, 1172520, 933720, 595800, 215280, 3720, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 76320, 313680, 782040, 1014840, 1159320, 1188360, 1129560, 970920, 747480, 283800, 127320, 7440, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 184200, 567720, 929520, 1188840, 1322640, 1355040, 1317600, 1202160, 977280, 669720, 236040, 240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 158640, 535680, 888960, 1131600, 1289760, 1341840, 1294320, 1161720, 958080, 610440, 216120, 4320, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 96840, 476400, 847800, 1102800, 1256280, 1295280, 1231560, 1108320, 863640, 533160, 206520, 4680, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360, 178440, 539520, 868560, 1109520, 1243800, 1279560, 1224480, 1090440, 755760, 495480, 175920, 7800, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 86520, 224400, 707280, 592320, 567960, 459360, 201480, 158280, 48000, 10320, 240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1440, 6120, 96000, 163080, 271440, 142440, 484800, 488760, 502560, 254040, 4320, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2160, 140160, 268320, 468000, 676320, 690240, 801000, 891600, 999120, 770280, 432600, 219360, 24360, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1800, 229800, 618240, 966480, 1207920, 1349280, 1398720, 1334280, 1210680, 779160, 344160, 159960, 10560, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3120, 225000, 583800, 935280, 1218240, 1307280, 1378080, 1326960, 1173720, 938160, 601440, 232080, 14640, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5520, 226080, 578400, 889200, 1148520, 1283640, 1325880, 1256040, 1012560, 805800, 510240, 163560, 17280, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 42120, 213600, 362640, 561360, 1030560, 1241040, 1203240, 1060680, 884880, 589440, 248760, 18720, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8520, 223440, 569520, 860160, 882360, 1119720, 1222440, 1057200, 1077720, 824280, 499200, 191040, 14760, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9600, 221760, 592680, 934200, 1167120, 1286520, 1323240, 1294080, 1142760, 928920, 591840, 244080, 14160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3960, 194640, 487440, 860280, 953760, 1004160, 1239240, 1308120, 1207920, 1006440, 688800, 271080, 12480, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7320, 253320, 648120, 984000, 1221600, 1358280, 1396800, 1359480, 1221120, 979680, 654720, 265320, 14880, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17520, 268200, 638160, 975360, 1200720, 1321200, 1340640, 1287720, 1149120, 869880, 460080, 184440, 22680, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10800, 184800, 449760, 740040, 960600, 327720, 916800, 1182120, 1024200, 770640, 497040, 186240, 18600, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15240, 269760, 657840, 972960, 1224600, 1385640, 1416120, 1397400, 1251720, 1019280, 679080, 268080, 14400, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12720, 227640, 565440, 868200, 1110120, 1278840, 1344000, 1306680, 1100640, 906360, 586200, 257280, 12720, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15840, 242280, 591840, 906960, 1137480, 1266600, 1248360, 1175280, 1090800, 741480, 544680, 230520, 20760, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20160, 205920, 376320, 618480, 655080, 823440, 810360, 891480, 662280, 427080, 309000, 144960, 12840, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21360, 251760, 569760, 894360, 1132200, 1128240, 520800, 569400, 567720, 249840, 252120, 99480, 29880, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10920, 145080, 440040, 1066320, 1271880, 1384200, 1418880, 1358040, 1159920, 957720, 593400, 265680, 20280, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28680, 284520, 666480, 997560, 1211280, 1325040, 1359360, 1304040, 1194840, 939600, 639000, 267120, 22080, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43200, 281400, 447480, 792360, 727440, 938040, 1205160, 1067760, 897480, 599400, 429840, 261840, 34440, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24720, 249720, 579000, 888480, 1102560, 1228920, 1269120, 1221960, 1084200, 863040, 534120, 210480, 33840, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1800, 7560, 214560, 767040, 683280, 329400, 611520, 484560, 746280, 559440, 259800, 24360, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21480, 212880, 492840, 705840, 1008000, 1259640, 1275720, 993600, 1071360, 967320, 525480, 199440, 24960, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 22680, 225360, 151320, 251880, 263040, 227280, 175800, 195840, 149640, 38520, 1200, 240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7800, 135120, 493440, 960240, 585480, 1030440, 959280, 293400, 74760, 22440, 15000, 57960, 33240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38280, 315000, 663240, 974640, 1258440, 1335120, 1464480, 1426320, 1253880, 1038240, 674520, 273240, 45000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40680, 309960, 655680, 1022880, 1188120, 833880, 634560, 864840, 499440, 436440, 516720, 298440, 26400, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24240, 239400, 474120, 584520, 1131120, 1300080, 1397160, 1233360, 1041240, 981240, 668640, 282120, 32280, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41520, 321240, 696840, 1017240, 1223400, 1380360, 1420320, 1371120, 1237200, 992760, 651000, 275400, 32280, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36840, 273120, 607320, 914880, 1116720, 1238040, 1293120, 1251240, 1081680, 751320, 512640, 210240, 37800, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 45960, 329520, 695280, 985920, 1225200, 1363200, 1390080, 1335360, 1195440, 953400, 627120, 273960, 45240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54000, 317280, 668400, 958800, 1167960, 742680, 583680, 494280, 451080, 831240, 526200, 315960, 34200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58080, 320400, 651120, 959880, 1178040, 1299360, 1339080, 1285200, 1159560, 917520, 607440, 263400, 38880, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 56040, 310440, 628560, 920160, 1137720, 1251000, 1283640, 1243560, 1119120, 899520, 609000, 267480, 35760, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57360, 310680, 645360, 931800, 1133520, 1266480, 1293600, 1223280, 1087800, 872880, 575400, 252000, 51480, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27000, 167040, 429480, 575640, 1076160, 1201800, 1232280, 1168200, 1041120, 824880, 552120, 247560, 36720, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1440, 127920, 412920, 747720, 622080, 980640, 1046880, 801360, 685560, 464280, 396960, 106200, 840, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 3000, 37800, 105600, 206040, 396480, 412080, 517200, 594600, 328440, 338160, 306840, 97560, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31080, 171000, 419160, 875400, 818160, 986280, 806400, 931680, 1035720, 855360, 583200, 230640, 66120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 81480, 304200, 414000, 542040, 729960, 312240, 155400, 113520, 100920, 146160, 90000, 108600, 24240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6720, 113640, 226080, 555360, 1169280, 1284360, 1301160, 1242000, 1100760, 890400, 614400, 273720, 43320, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72120, 337440, 698880, 974040, 1160520, 1286400, 1304040, 1266120, 1103040, 779400, 571680, 243000, 66480, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37680, 331080, 704760, 996000, 1151040, 1261560, 1199160, 982320, 571440, 528360, 202080, 93120, 9720, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10440, 32640, 92400, 135840, 112080, 150000, 105720, 71760, 20760, 112200, 69120, 720, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 11760, 88200, 129840, 160920, 299280, 303240, 418080, 432840, 392040, 211920, 223320, 49920, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 66000, 320040, 668400, 974760, 1152120, 1198800, 1245480, 1182840, 1083240, 798000, 531600, 173520, 39240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 77880, 329160, 647520, 911520, 987960, 1097040, 1011000, 853200, 972000, 900000, 501960, 222240, 34200, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62040, 355080, 707520, 996240, 1179960, 1280880, 1327680, 1288080, 1147800, 925800, 625200, 281040, 48120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 60720, 273960, 525960, 848640, 1060800, 1173360, 1211040, 1070880, 929880, 675000, 331920, 105120, 6120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4440, 22560, 82440, 136800, 141600, 75720, 97200, 173880, 84720, 48480, 26040, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5040, 29520, 190440, 200760, 243000, 359760, 408840, 610920, 149760, 266040, 235680, 56520, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8160, 96480, 254160, 328920, 1049760, 1194960, 1219080, 1161480, 1039560, 812640, 541440, 291000, 91680, 3240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94200, 287520, 590760, 597240, 477600, 660000, 852360, 1100880, 940440, 513000, 43320, 120, 3000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 3720, 117720, 121920, 672480, 212400, 423120, 923400, 715440, 598560, 81720, 55680, 19560, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360, 26400, 98880, 513600, 1030680, 1129200, 1266360, 1134600, 1271640, 1172040, 878160, 569640, 152280, 42120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 70920, 355440, 689040, 947280, 1088400, 888480, 873360, 736200, 955800, 875040, 479760, 239640, 91800, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 92520, 280440, 467760, 685440, 1016280, 1194120, 1157880, 1133040, 738120, 543840, 331200, 132600, 50280, 840, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 89400, 330120, 639120, 910560, 1103880, 1102920, 1092000, 1179000, 1053000, 848160, 588360, 300000, 57360, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17280, 104040, 62280, 15000, 314400, 814080, 957120, 1110240, 856080, 847320, 649440, 315720, 53160, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15120, 86760, 195120, 260880, 249480, 405360, 490200, 776760, 724920, 499080, 360240, 219000, 100320, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2760, 101160, 405600, 811320, 872280, 1134000, 1141800, 667800, 722640, 688920, 398520, 53880, 480, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96840, 360720, 702120, 912360, 1041480, 1173840, 1212240, 1164840, 997200, 791760, 581040, 291480, 80760, 5400, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 33360, 227880, 542520, 774240, 1075560, 969480, 1097640, 1103400, 889200, 555600, 579240, 121440, 25920, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 96840, 324720, 607080, 899640, 1083240, 1192320, 1197720, 1126440, 959040, 842160, 540360, 249120, 88320, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 480, 90000, 335400, 624840, 876360, 1039440, 1113720, 1095840, 1012320, 829320, 703800, 390240, 220080, 74520, 480, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 93240, 306720, 623040, 553800, 703680, 964080, 797400, 743520, 634080, 476880, 266880, 154560, 51120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 66240, 329640, 566640, 892920, 1096320, 1235640, 1225320, 1128480, 874560, 869880, 607920, 285000, 47400, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 85920, 154920, 297480, 330720, 369480, 558000, 323520, 252840, 665640, 479400, 183840, 135600, 66840, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1440, 64800, 150960, 489240, 624120, 1010520, 963360, 1116360, 1038600, 892560, 622320, 309240, 110040, 12480, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35760, 158520, 372840, 830760, 1066080, 1157880, 1190160, 1149600, 1034040, 827880, 571680, 281640, 77880, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14400, 73560, 294000, 507120, 836280, 1061880, 1098600, 1033680, 828600, 686160, 491280, 259680, 95160, 240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 70680, 308640, 577200, 827520, 1008480, 1086480, 1112400, 998760, 886800, 826080, 402960, 129480, 24120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16440, 96360, 439680, 478440, 524160, 773040, 980520, 1139760, 774480, 771120, 569400, 287880, 76440, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 91680, 305640, 566040, 823680, 1007640, 1106040, 1122720, 1088760, 997560, 801480, 550920, 269880, 68040, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 92040, 314760, 603840, 856200, 1035480, 1128960, 1154520, 1053360, 931440, 795840, 540840, 285720, 39000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360, 94920, 244200, 569760, 721920, 960840, 887280, 1140000, 1118280, 950160, 456600, 278040, 25800, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2760, 134040, 372480, 456600, 582240, 950640, 1028400, 1117920, 1006920, 824880, 601320, 294360, 63720, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 240, 99960, 154080, 436440, 455640, 369240, 323640, 174120, 224160, 305640, 182760, 134400, 35760, 240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2520, 70200, 460560, 744240, 980520, 1061280, 956280, 1118040, 913320, 383760, 464520, 13200, 37440, 7320, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5880, 238920, 363240, 618720, 471600, 642480, 731640, 670680, 539040, 903240, 631080, 318960, 84960, 480, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 63840, 268440, 539280, 716640, 983040, 1151760, 961920, 924240, 1039320, 904800, 649680, 316440, 91200, 1920, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 60720, 169080, 419880, 705840, 1065720, 1186200, 1204560, 1159920, 840960, 682200, 372120, 293040, 102000, 360, 0, 0, 0, 0, 0, 0, 0, 0, 0, 360, 85320, 224880, 402480, 709080, 791160, 709680, 1047000, 988080, 839520, 486720, 229920, 145440, 52440, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17880, 102120, 195720, 203400, 259680, 357240, 310320, 415680, 404760, 285840, 419280, 217320, 37320, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70680, 359040, 558480, 561240, 787200, 1132560, 1128120, 1003680, 827520, 812160, 457680, 303720, 84360, 240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 480, 95520, 286800, 511440, 764760, 941520, 1016400, 1144560, 1135680, 1029000, 833160, 559440, 274800, 74280, 11520, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 83400, 284880, 547560, 816000, 1011000, 1128600, 1171560, 1135200, 1034520, 828960, 491160, 225000, 97560, 240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 82320, 296040, 575400, 834960, 1000440, 1118040, 1161720, 1110960, 985320, 850200, 592320, 283080, 47880, 1320, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94800, 320520, 564360, 816360, 927240, 929400, 858720, 627120, 354360, 511200, 237480, 125040, 26040, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 73680, 37800, 128160, 150960, 167880, 234720, 205080, 157800, 124920, 36000, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8040, 31200, 97560, 155520, 202440, 200520, 365400, 326760, 348240, 132480, 37920, 57480, 960, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 74760, 530640, 585000, 806160, 1119120, 832680, 630360, 967680, 742320, 440520, 258480, 97920, 360, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72720, 147840, 309240, 512040, 610680, 873960, 1063440, 762720, 817680, 438360, 290280, 218400, 118440, 480, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 82680, 230640, 337320, 638760, 874920, 925440, 979440, 628440, 1080720, 884640, 594600, 304080, 76800, 120, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 61680, 163800, 240480, 243360, 386280, 436080, 663120, 358320, 360840, 175920, 9000, 1320, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2280, 84120, 200640, 223080, 214560, 215520, 185040, 253080, 297120, 215880, 124920, 56880, 6960, 0, 0, 0, 0, 0])\n"],"name":"stdout"}]},{"cell_type":"code","metadata":{"id":"akNtoFUpMUAR","executionInfo":{"status":"ok","timestamp":1604566567785,"user_tz":-540,"elapsed":569,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}}},"source":["temp=pd.DataFrame(t.values(), index=t.keys())"],"execution_count":97,"outputs":[]},{"cell_type":"code","metadata":{"id":"p2a5g_jRMqwy","executionInfo":{"status":"ok","timestamp":1604566570002,"user_tz":-540,"elapsed":936,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}},"outputId":"725752e9-c9d3-4e51-eba8-f719f56ee389","colab":{"base_uri":"https://localhost:8080/"}},"source":["print(temp)"],"execution_count":98,"outputs":[{"output_type":"stream","text":[" 0\n","2019-07-01 1:00 0\n","2019-07-01 2:00 0\n","2019-07-01 3:00 0\n","2019-07-01 4:00 0\n","2019-07-01 5:00 0\n","... ..\n","2020-06-30 20:00 0\n","2020-06-30 21:00 0\n","2020-06-30 22:00 0\n","2020-06-30 23:00 0\n","2020-06-30 0:00 0\n","\n","[8784 rows x 1 columns]\n"],"name":"stdout"}]},{"cell_type":"code","metadata":{"id":"yv-wtS5tNLNv","executionInfo":{"status":"ok","timestamp":1604566574693,"user_tz":-540,"elapsed":1060,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}},"outputId":"0834b94e-d033-4c67-8cf2-16c956a0b383","colab":{"base_uri":"https://localhost:8080/","height":235}},"source":["temp.columns=['발전량']\n","temp.index.names=['일자']\n","temp.head()"],"execution_count":99,"outputs":[{"output_type":"execute_result","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>발전량</th>\n"," </tr>\n"," <tr>\n"," <th>일자</th>\n"," <th></th>\n"," </tr>\n"," </thead>\n"," <tbody>\n"," <tr>\n"," <th>2019-07-01 1:00</th>\n"," <td>0</td>\n"," </tr>\n"," <tr>\n"," <th>2019-07-01 2:00</th>\n"," <td>0</td>\n"," </tr>\n"," <tr>\n"," <th>2019-07-01 3:00</th>\n"," <td>0</td>\n"," </tr>\n"," <tr>\n"," <th>2019-07-01 4:00</th>\n"," <td>0</td>\n"," </tr>\n"," <tr>\n"," <th>2019-07-01 5:00</th>\n"," <td>0</td>\n"," </tr>\n"," </tbody>\n","</table>\n","</div>"],"text/plain":[" 발전량\n","일자 \n","2019-07-01 1:00 0\n","2019-07-01 2:00 0\n","2019-07-01 3:00 0\n","2019-07-01 4:00 0\n","2019-07-01 5:00 0"]},"metadata":{"tags":[]},"execution_count":99}]},{"cell_type":"code","metadata":{"id":"sYP_krzqQ7OS","executionInfo":{"status":"ok","timestamp":1604566577735,"user_tz":-540,"elapsed":702,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}}},"source":["def min_max_normalize(lst):\n"," normalize = []\n","\n"," for value in lst:\n"," normalized_num=(value - min(lst))/(max(lst)-min(lst))\n"," normalize.append(normalized_num)\n","\n"," return normalize"],"execution_count":100,"outputs":[]},{"cell_type":"code","metadata":{"id":"nRTowLdHWfHp","executionInfo":{"status":"ok","timestamp":1604566579969,"user_tz":-540,"elapsed":732,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}},"outputId":"c9b03a88-e3c5-417a-bb1b-55830de5488c","colab":{"base_uri":"https://localhost:8080/","height":235}},"source":["wtData['발전량']=0\n","wtData.head()"],"execution_count":101,"outputs":[{"output_type":"execute_result","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>기온(°C)</th>\n"," <th>강수량(mm)</th>\n"," <th>습도(%)</th>\n"," <th>현지기압(hPa)</th>\n"," <th>지면온도(°C)</th>\n"," <th>발전량</th>\n"," </tr>\n"," <tr>\n"," <th>일시</th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," </tr>\n"," </thead>\n"," <tbody>\n"," <tr>\n"," <th>2019-07-01 1:00</th>\n"," <td>22.2</td>\n"," <td>-1.0</td>\n"," <td>90</td>\n"," <td>993.5</td>\n"," <td>22.0</td>\n"," <td>0</td>\n"," </tr>\n"," <tr>\n"," <th>2019-07-01 2:00</th>\n"," <td>22.4</td>\n"," <td>-1.0</td>\n"," <td>89</td>\n"," <td>993.4</td>\n"," <td>22.2</td>\n"," <td>0</td>\n"," </tr>\n"," <tr>\n"," <th>2019-07-01 3:00</th>\n"," <td>22.3</td>\n"," <td>-1.0</td>\n"," <td>90</td>\n"," <td>993.4</td>\n"," <td>22.1</td>\n"," <td>0</td>\n"," </tr>\n"," <tr>\n"," <th>2019-07-01 4:00</th>\n"," <td>21.9</td>\n"," <td>-1.0</td>\n"," <td>91</td>\n"," <td>993.4</td>\n"," <td>21.4</td>\n"," <td>0</td>\n"," </tr>\n"," <tr>\n"," <th>2019-07-01 5:00</th>\n"," <td>21.8</td>\n"," <td>-1.0</td>\n"," <td>91</td>\n"," <td>993.9</td>\n"," <td>21.2</td>\n"," <td>0</td>\n"," </tr>\n"," </tbody>\n","</table>\n","</div>"],"text/plain":[" 기온(°C) 강수량(mm) 습도(%) 현지기압(hPa) 지면온도(°C) 발전량\n","일시 \n","2019-07-01 1:00 22.2 -1.0 90 993.5 22.0 0\n","2019-07-01 2:00 22.4 -1.0 89 993.4 22.2 0\n","2019-07-01 3:00 22.3 -1.0 90 993.4 22.1 0\n","2019-07-01 4:00 21.9 -1.0 91 993.4 21.4 0\n","2019-07-01 5:00 21.8 -1.0 91 993.9 21.2 0"]},"metadata":{"tags":[]},"execution_count":101}]},{"cell_type":"code","metadata":{"id":"xFJ0f-AIp7lE","executionInfo":{"status":"ok","timestamp":1604568174883,"user_tz":-540,"elapsed":1173,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}}},"source":["wtData['시간']=0\n","for date in wtData.index:\n"," temp=date[11:13]\n"," if temp[1]==\":\":temp=temp[0]\n"," wtData['시간']=int(temp)"],"execution_count":129,"outputs":[]},{"cell_type":"code","metadata":{"id":"xAfRDfGsS5Gh","executionInfo":{"status":"ok","timestamp":1604566601134,"user_tz":-540,"elapsed":13135,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}},"outputId":"cb0112f0-fbb6-4e5c-e8da-0571c3c56617","colab":{"base_uri":"https://localhost:8080/"}},"source":["for date1 in wtData.index:\n"," for date2 in temp.index:\n"," if date1==date2:\n"," wtData['발전량'][date1]=temp['발전량'][date2]"],"execution_count":102,"outputs":[{"output_type":"stream","text":["/usr/local/lib/python3.6/dist-packages/ipykernel_launcher.py:4: SettingWithCopyWarning: \n","A value is trying to be set on a copy of a slice from a DataFrame\n","\n","See the caveats in the documentation: https://pandas.pydata.org/pandas-docs/stable/user_guide/indexing.html#returning-a-view-versus-a-copy\n"," after removing the cwd from sys.path.\n"],"name":"stderr"}]},{"cell_type":"code","metadata":{"id":"QcgiXXo0XJfY","executionInfo":{"status":"ok","timestamp":1604566630614,"user_tz":-540,"elapsed":748,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}},"outputId":"9b3c3469-9c46-4535-8735-f89c9e50fc42","colab":{"base_uri":"https://localhost:8080/","height":235}},"source":["wtData=wtData.fillna(-1)\n","wtData.head()"],"execution_count":104,"outputs":[{"output_type":"execute_result","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>기온(°C)</th>\n"," <th>강수량(mm)</th>\n"," <th>습도(%)</th>\n"," <th>현지기압(hPa)</th>\n"," <th>지면온도(°C)</th>\n"," <th>발전량</th>\n"," </tr>\n"," <tr>\n"," <th>일시</th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," <th></th>\n"," </tr>\n"," </thead>\n"," <tbody>\n"," <tr>\n"," <th>2019-07-01 1:00</th>\n"," <td>22.2</td>\n"," <td>-1.0</td>\n"," <td>90</td>\n"," <td>993.5</td>\n"," <td>22.0</td>\n"," <td>0</td>\n"," </tr>\n"," <tr>\n"," <th>2019-07-01 2:00</th>\n"," <td>22.4</td>\n"," <td>-1.0</td>\n"," <td>89</td>\n"," <td>993.4</td>\n"," <td>22.2</td>\n"," <td>0</td>\n"," </tr>\n"," <tr>\n"," <th>2019-07-01 3:00</th>\n"," <td>22.3</td>\n"," <td>-1.0</td>\n"," <td>90</td>\n"," <td>993.4</td>\n"," <td>22.1</td>\n"," <td>0</td>\n"," </tr>\n"," <tr>\n"," <th>2019-07-01 4:00</th>\n"," <td>21.9</td>\n"," <td>-1.0</td>\n"," <td>91</td>\n"," <td>993.4</td>\n"," <td>21.4</td>\n"," <td>0</td>\n"," </tr>\n"," <tr>\n"," <th>2019-07-01 5:00</th>\n"," <td>21.8</td>\n"," <td>-1.0</td>\n"," <td>91</td>\n"," <td>993.9</td>\n"," <td>21.2</td>\n"," <td>0</td>\n"," </tr>\n"," </tbody>\n","</table>\n","</div>"],"text/plain":[" 기온(°C) 강수량(mm) 습도(%) 현지기압(hPa) 지면온도(°C) 발전량\n","일시 \n","2019-07-01 1:00 22.2 -1.0 90 993.5 22.0 0\n","2019-07-01 2:00 22.4 -1.0 89 993.4 22.2 0\n","2019-07-01 3:00 22.3 -1.0 90 993.4 22.1 0\n","2019-07-01 4:00 21.9 -1.0 91 993.4 21.4 0\n","2019-07-01 5:00 21.8 -1.0 91 993.9 21.2 0"]},"metadata":{"tags":[]},"execution_count":104}]},{"cell_type":"code","metadata":{"id":"p27JCDz8XRaA","executionInfo":{"status":"ok","timestamp":1604568190388,"user_tz":-540,"elapsed":974,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}}},"source":["feature=[\"기온(°C)\",\"강수량(mm)\",\"습도(%)\",\"현지기압(hPa)\",\"지면온도(°C)\",\"시간\"]\n","gen=[\"발전량\"]\n","T_data=wtData[feature]\n","T_label=wtData[\"발전량\"]"],"execution_count":130,"outputs":[]},{"cell_type":"code","metadata":{"id":"FbrPPgPujD5e","executionInfo":{"status":"ok","timestamp":1604567674665,"user_tz":-540,"elapsed":936,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}}},"source":["from sklearn.neighbors import KNeighborsRegressor\n","regressor = KNeighborsRegressor(n_neighbors=900,weights=\"distance\")"],"execution_count":123,"outputs":[]},{"cell_type":"code","metadata":{"id":"DAAySZf9oSbP","executionInfo":{"status":"ok","timestamp":1604567679591,"user_tz":-540,"elapsed":791,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}},"outputId":"543ff405-a3f6-4a3a-df8f-8b358a8e4ea0","colab":{"base_uri":"https://localhost:8080/"}},"source":["print(T_label)"],"execution_count":124,"outputs":[{"output_type":"stream","text":["일시\n","2019-07-01 1:00 0\n","2019-07-01 2:00 0\n","2019-07-01 3:00 0\n","2019-07-01 4:00 0\n","2019-07-01 5:00 0\n"," ..\n","2020-06-29 20:00 0\n","2020-06-29 21:00 0\n","2020-06-29 22:00 0\n","2020-06-29 23:00 0\n","2020-06-30 0:00 0\n","Name: 발전량, Length: 8760, dtype: int64\n"],"name":"stdout"}]},{"cell_type":"code","metadata":{"id":"V53fLWsijv-l","executionInfo":{"status":"ok","timestamp":1604568197368,"user_tz":-540,"elapsed":791,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}},"outputId":"fdf02945-7683-4189-e542-3a6b03dcf61a","colab":{"base_uri":"https://localhost:8080/"}},"source":["regressor.fit(T_data,T_label)"],"execution_count":131,"outputs":[{"output_type":"execute_result","data":{"text/plain":["KNeighborsRegressor(algorithm='auto', leaf_size=30, metric='minkowski',\n"," metric_params=None, n_jobs=None, n_neighbors=900, p=2,\n"," weights='distance')"]},"metadata":{"tags":[]},"execution_count":131}]},{"cell_type":"code","metadata":{"id":"Z82XKJGbj1xf","executionInfo":{"status":"ok","timestamp":1604568237299,"user_tz":-540,"elapsed":779,"user":{"displayName":"유재상","photoUrl":"https://lh3.googleusercontent.com/a-/AOh14GglKAtzG4NOmWtLkHxESc-8pdCe25fvMnGxEpncbQ=s64","userId":"01471692153650888086"}},"outputId":"38d660be-8049-426d-d52f-523f872ad956","colab":{"base_uri":"https://localhost:8080/"}},"source":["print(regressor.predict([[24.0,-1.0,90,993.5,22.0,]]))"],"execution_count":132,"outputs":[{"output_type":"stream","text":["[38915.18408594]\n"],"name":"stdout"}]},{"cell_type":"code","metadata":{"id":"K1UTv8OppbFX"},"source":[""],"execution_count":null,"outputs":[]}]}