{"id":2561,"date":"2024-09-25T09:27:22","date_gmt":"2024-09-25T00:27:22","guid":{"rendered":"https:\/\/secondlife.lol\/?p=2561"},"modified":"2024-09-26T21:59:27","modified_gmt":"2024-09-26T12:59:27","slug":"fixing-nan-in-python-arima-predictions","status":"publish","type":"post","link":"https:\/\/secondlife.lol\/zh\/fixing-nan-in-python-arima-predictions\/","title":{"rendered":"Python \u7eb3\u7c73\u6e05\u9664\uff1a\u89e3\u51b3 ARIMA \u6a21\u578b\u9884\u6d4b\u4e2d\u7684\u7eb3\u7c73\u9897\u7c92\u95ee\u9898"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><a href=\"http:\/\/secondlife.lol\/stock-data-time-series-analysis-trend-forecasting\">\uc774\uc804 \ud3ec\uc2a4\ud2b8<\/a>\uc5d0\uc11c \uc6b0\ub9ac\ub294 S&amp;P 500 \uc8fc\uc2dd \ub370\uc774\ud130\ub97c \ubd84\uc11d\ud558\uace0 ARIMA \ubaa8\ub378\ub85c \uc8fc\uac00\ub97c \uc608\uce21\ud588\uc9c0\ub9cc, \uc608\uce21\uac12\uacfc \uc2e4\uc81c\uac12\uc744 \ube44\uad50\ud558\ub294 \uacfc\uc815\uc5d0\uc11c \ud3c9\uade0 \uc81c\uacf1 \uc624\ucc28(MSE)\ub97c \uacc4\uc0b0\ud560 \ub54c <code>nan<\/code> \uc624\ub958\uac00 \ubc1c\uc0dd\ud588\uc2b5\ub2c8\ub2e4. \uc774\ubc88 \ud3ec\uc2a4\ud2b8\uc5d0\uc11c\ub294 <strong>\ud30c\uc774\uc36c nan \uc81c\uac70 \ubc29\ubc95\uc744 \uc911\uc2ec\uc73c\ub85c ARIMA \ubaa8\ub378\uc744 \uc0ac\uc6a9\ud55c \uc2dc\uacc4\uc5f4 \uc608\uce21\uc5d0\uc11c \uc790\uc8fc \ubc1c\uc0dd\ud558\ub294 <code>nan<\/code> \ubb38\uc81c\ub97c \ud574\uacb0<\/strong>\ud558\ub294 \uacfc\uc815\uc744 \uc124\uba85\ud558\uaca0\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n<style>.kb-table-of-content-nav.kb-table-of-content-id83_5f28a6-34 .kb-table-of-content-wrap{padding-top:var(--global-kb-spacing-sm, 1.5rem);padding-right:var(--global-kb-spacing-sm, 1.5rem);padding-bottom:var(--global-kb-spacing-sm, 1.5rem);padding-left:var(--global-kb-spacing-sm, 1.5rem);border-top:3px solid var(--global-palette2, #2B6CB0);border-right:3px solid var(--global-palette2, #2B6CB0);border-bottom:3px solid var(--global-palette2, #2B6CB0);border-left:3px solid var(--global-palette2, #2B6CB0);border-top-left-radius:5px;border-top-right-radius:5px;border-bottom-right-radius:5px;border-bottom-left-radius:5px;box-shadow:0px 0px 14px 0px rgba(0, 0, 0, 0.2);}.kb-table-of-content-nav.kb-table-of-content-id83_5f28a6-34 .kb-table-of-contents-title-wrap{padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:0px;}.kb-table-of-content-nav.kb-table-of-content-id83_5f28a6-34 .kb-table-of-contents-title-wrap{color:var(--global-palette2, #2B6CB0);}.kb-table-of-content-nav.kb-table-of-content-id83_5f28a6-34 .kb-table-of-contents-title{color:var(--global-palette2, #2B6CB0);font-size:28px;font-weight:regular;font-style:normal;}.kb-table-of-content-nav.kb-table-of-content-id83_5f28a6-34 .kb-table-of-content-wrap .kb-table-of-content-list{color:var(--global-palette1, #3182CE);line-height:2em;font-weight:regular;font-style:normal;margin-top:var(--global-kb-spacing-sm, 1.5rem);margin-right:0px;margin-bottom:0px;margin-left:0px;}.kb-table-of-content-nav.kb-table-of-content-id83_5f28a6-34 .kb-table-of-content-wrap .kb-table-of-content-list .kb-table-of-contents__entry:hover{color:var(--global-palette6, #718096);}@media all and (max-width: 1024px){.kb-table-of-content-nav.kb-table-of-content-id83_5f28a6-34 .kb-table-of-content-wrap{border-top:3px solid var(--global-palette2, #2B6CB0);border-right:3px solid var(--global-palette2, #2B6CB0);border-bottom:3px solid var(--global-palette2, #2B6CB0);border-left:3px solid var(--global-palette2, #2B6CB0);}}@media all and (max-width: 1024px){.kb-table-of-content-nav.kb-table-of-content-id83_5f28a6-34 .kb-table-of-contents-title{font-size:28px;}}@media all and (max-width: 767px){.kb-table-of-content-nav.kb-table-of-content-id83_5f28a6-34 .kb-table-of-content-wrap{border-top:3px solid var(--global-palette2, #2B6CB0);border-right:3px solid var(--global-palette2, #2B6CB0);border-bottom:3px solid var(--global-palette2, #2B6CB0);border-left:3px solid var(--global-palette2, #2B6CB0);}.kb-table-of-content-nav.kb-table-of-content-id83_5f28a6-34 .kb-table-of-contents-title{font-size:28px;}}<\/style>\n\n\n<h2 class=\"wp-block-heading\">nan\uc774\ub780?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><code>nan<\/code>\uc740 <strong>&#8220;Not a Number&#8221;<\/strong>\uc758 \uc57d\uc790\ub85c, \uc5f0\uc0b0 \uacfc\uc815\uc5d0\uc11c \uc798\ubabb\ub41c \uac12\uc774 \uc0dd\uc131\ub418\uc5c8\uac70\ub098 \ub370\uc774\ud130\uc5d0 \ub204\ub77d\ub41c \uac12\uc774 \uc788\uc744 \ub54c \ubc1c\uc0dd\ud558\ub294 \uacb0\uacfc\uac12\uc785\ub2c8\ub2e4. \uc8fc\ub85c \uc2dc\uacc4\uc5f4 \ubd84\uc11d\uc5d0\uc11c \ub370\uc774\ud130\uac00 \uc190\uc2e4\ub418\uc5c8\uac70\ub098, \ub370\uc774\ud130\uc14b\uc5d0 \ubd88\uc644\uc804\ud55c \uac12\uc774 \uc788\uc744 \ub54c <code>nan<\/code> \uac12\uc774 \ubc1c\uc0dd\ud569\ub2c8\ub2e4. \ud2b9\ud788 <a href=\"https:\/\/www.python.org\/\" target=\"_blank\" rel=\"noopener\">\ud30c\uc774\uc36c<\/a>\uc5d0\uc11c \uc2dc\uacc4\uc5f4 \ubd84\uc11d\uc744 \ud560 \ub54c, <code>nan<\/code> \uac12\uc774 \ud3ec\ud568\ub41c \ub370\uc774\ud130\ub97c \uc0ac\uc6a9\ud558\uba74 \uc608\uce21 \ubaa8\ub378\uc758 \uc131\ub2a5\uc774 \uc65c\uace1\ub418\uac70\ub098 \uc5f0\uc0b0 \uc790\uccb4\uac00 \uc2e4\ud328\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">nan\uc774 \ubc1c\uc0dd\ud558\ub294 \uc8fc\uc694 \uc6d0\uc778<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>\ub204\ub77d\ub41c \ub370\uc774\ud130<\/strong>: \ub370\uc774\ud130\uc14b\uc5d0 \uc77c\ubd80 \uac12\uc774 \ube44\uc5b4\uc788\uac70\ub098 \uc798\ubabb\ub41c \uac12\uc774 \ud3ec\ud568\ub418\uc5b4 \uc788\uc744 \ub54c <code>nan<\/code> \uac12\uc774 \ubc1c\uc0dd\ud569\ub2c8\ub2e4.<\/li>\n\n\n\n<li><strong>\uc798\ubabb\ub41c \uc5f0\uc0b0<\/strong>: \ubd84\ubaa8\uac00 0\uc778 \uacc4\uc0b0, \uc798\ubabb\ub41c \ub370\uc774\ud130 \ud615\uc2dd \ub4f1\uc73c\ub85c \uc778\ud574 <code>nan<\/code>\uc774 \ubc1c\uc0dd\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/li>\n\n\n\n<li><strong>\uc778\ub371\uc2a4 \ubd88\uc77c\uce58<\/strong>: \uc608\uce21\ub41c \uac12\uacfc \uc2e4\uc81c \uac12\uc758 \uc778\ub371\uc2a4\uac00 \ub9de\uc9c0 \uc54a\uc73c\uba74 \uacc4\uc0b0 \uacfc\uc815\uc5d0\uc11c <code>nan<\/code>\uc774 \ubc1c\uc0dd\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/li>\n<\/ul>\n\n\n<style>.kb-image2561_d1cc70-82 .kb-image-has-overlay:after{opacity:0.3;border-top-left-radius:5px;border-top-right-radius:5px;border-bottom-right-radius:5px;border-bottom-left-radius:5px;}.kb-image2561_d1cc70-82 img.kb-img, .kb-image2561_d1cc70-82 .kb-img img{border-top-left-radius:5px;border-top-right-radius:5px;border-bottom-right-radius:5px;border-bottom-left-radius:5px;box-shadow:0px 0px 14px 0px rgba(0, 0, 0, 0.2);}<\/style>\n<div class=\"wp-block-kadence-image kb-image2561_d1cc70-82\"><figure class=\"aligncenter size-medium\"><img decoding=\"async\" width=\"300\" height=\"300\" src=\"https:\/\/secondlife.lol\/wp-content\/uploads\/2024\/09\/image-19-300x300.jpg\" alt=\"\ud30c\uc774\uc36c nan \uc81c\uac70 \ud3ec\uc2a4\ud2b8 \uadf8\ub9bc\" class=\"kb-img wp-image-2570\" srcset=\"https:\/\/secondlife.lol\/wp-content\/uploads\/2024\/09\/image-19-300x300.jpg 300w, https:\/\/secondlife.lol\/wp-content\/uploads\/2024\/09\/image-19-600x600.jpg 600w, https:\/\/secondlife.lol\/wp-content\/uploads\/2024\/09\/image-19-150x150.jpg 150w, https:\/\/secondlife.lol\/wp-content\/uploads\/2024\/09\/image-19-768x768.jpg 768w, https:\/\/secondlife.lol\/wp-content\/uploads\/2024\/09\/image-19.jpg 1024w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/figure><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">\ud30c\uc774\uc36c nan \uc81c\uac70\uc758 \uc911\uc694\uc131<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\uc2dc\uacc4\uc5f4 \ubd84\uc11d\uacfc \uac19\uc740 \ub370\uc774\ud130 \uc608\uce21 \uc791\uc5c5\uc5d0\uc11c <code>nan<\/code> \uac12\uc774 \ud3ec\ud568\ub41c \uc0c1\ud0dc\ub85c \ubaa8\ub378\uc744 \ud559\uc2b5\ud558\uac70\ub098 \ud3c9\uac00\ud558\uba74, \ubaa8\ub378\uc774 \uc801\uc808\ud788 \uc791\ub3d9\ud558\uc9c0 \uc54a\uac70\ub098 \uc798\ubabb\ub41c \uacb0\uacfc\ub97c \ub3c4\ucd9c\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ud30c\uc774\uc36c nan \uc81c\uac70\ub97c \ud1b5\ud574 <strong>\ub370\uc774\ud130\uc758 \ubb34\uacb0\uc131\uc744 \uc720\uc9c0\ud558\uace0, \ubaa8\ub378 \uc608\uce21\uc758 \uc815\ud655\ub3c4\ub97c \ub192\uc77c \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/strong> \uc608\ub97c \ub4e4\uc5b4, \uc8fc\uc2dd \ub370\uc774\ud130\uc5d0\uc11c \uc77c\ubd80 \ub0a0\uc9dc\uc758 \uac00\uaca9 \uc815\ubcf4\uac00 \uc5c6\uc73c\uba74 <code>nan<\/code> \uac12\uc774 \ubc1c\uc0dd\ud558\uace0, \uc774\ub97c \uc81c\uac70\ud558\uc9c0 \uc54a\uc73c\uba74 \ubaa8\ub378\uc774 \uc81c\ub300\ub85c \uc608\uce21\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">nan \ubb38\uc81c \ud574\uacb0 \ub2e8\uacc4\ubcc4 \uac00\uc774\ub4dc<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\uc774\uc81c <strong>\ud30c\uc774\uc36c nan \uc81c\uac70<\/strong>\ub97c \ud1b5\ud574 ARIMA \ubaa8\ub378 \uc608\uce21\uc5d0\uc11c \ubc1c\uc0dd\ud55c <code>nan<\/code> \ubb38\uc81c\ub97c \ud574\uacb0\ud558\ub294 \ubc29\ubc95\uc744 \ub2e8\uacc4\ubcc4\ub85c \uc54c\uc544\ubcf4\uaca0\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">1. \ub204\ub77d\ub41c \ub370\uc774\ud130(nan \uac12) \ud655\uc778 \ubc0f \uc81c\uac70<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\uba3c\uc800, \ub370\uc774\ud130\uc5d0 <code>nan<\/code> \uac12\uc774 \ud3ec\ud568\ub418\uc5b4 \uc788\ub294\uc9c0 \ud655\uc778\ud558\uace0 \uc774\ub97c \uc81c\uac70\ud574\uc57c \ud569\ub2c8\ub2e4. \ud30c\uc774\uc36c\uc758 <strong><code>dropna()<\/code> \ud568\uc218<\/strong>\ub97c \uc0ac\uc6a9\ud558\uba74 \ub370\uc774\ud130\uc5d0\uc11c <code>nan<\/code> \uac12\uc744 \uc27d\uac8c \uc81c\uac70\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># S&amp;P 500 \uc885\uac00 \ub370\uc774\ud130\uc5d0\uc11c nan \uac12 \uc81c\uac70\nsp500_close_clean = sp500&#91;'Close'].dropna()<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uc774 \ucf54\ub4dc\ub97c \ud1b5\ud574 <strong>S&amp;P 500<\/strong> \uc885\uac00 \ub370\uc774\ud130\uc5d0\uc11c \ubaa8\ub4e0 <code>nan<\/code> \uac12\uc744 \uc81c\uac70\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ub370\uc774\ud130\uac00 \uae68\ub057\ud558\uac8c \uc815\ub9ac\ub41c \uc0c1\ud0dc\uc5d0\uc11c\ub9cc ARIMA \ubaa8\ub378\uc744 \uc801\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">2. ARIMA \ubaa8\ub378 \ud559\uc2b5<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\uc774\uc81c \uae68\ub057\ud574\uc9c4 \ub370\uc774\ud130\ub97c \uc0ac\uc6a9\ud574 ARIMA \ubaa8\ub378\uc744 \ud559\uc2b5\ud569\ub2c8\ub2e4. <code>nan<\/code> \uac12\uc774 \uc81c\uac70\ub41c \ub370\uc774\ud130\ub97c \ubc14\ud0d5\uc73c\ub85c \ubaa8\ub378\uc744 \ud559\uc2b5\uc2dc\ud0a4\uba74 \uc608\uce21 \uacfc\uc815\uc5d0\uc11c \uc624\ub958\uac00 \ubc1c\uc0dd\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>from statsmodels.tsa.arima.model import ARIMA\n\n# ARIMA \ubaa8\ub378 \ud559\uc2b5\nmodel = ARIMA(sp500_close_clean, order=(5, 1, 0))\nmodel_fit = model.fit()<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uc774 \ub2e8\uacc4\uc5d0\uc11c\ub294 <code>nan<\/code> \uac12\uc774 \uc81c\uac70\ub41c \ub370\uc774\ud130\ub97c \uc0ac\uc6a9\ud574 ARIMA \ubaa8\ub378\uc744 \ud559\uc2b5\ud569\ub2c8\ub2e4. \uc774\uc81c \uae68\ub057\ud55c \ub370\uc774\ud130\ub85c \ubaa8\ub378\uc744 \ud6c8\ub828\ud588\uc73c\ubbc0\ub85c, \uc774\ud6c4 \uc608\uce21\uc5d0\uc11c \ubb38\uc81c\uac00 \ubc1c\uc0dd\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">3. \uc8fc\uac00 \uc608\uce21<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">ARIMA \ubaa8\ub378\uc744 \ud559\uc2b5\ud55c \ud6c4, \uc6b0\ub9ac\ub294 30\uc77c\uac04\uc758 \ubbf8\ub798 \uc8fc\uac00\ub97c \uc608\uce21\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc774 \uacfc\uc815\uc5d0\uc11c \uc608\uce21\ub41c \ub370\uc774\ud130\uc5d0\ub3c4 <code>nan<\/code> \uac12\uc774 \ud3ec\ud568\ub418\uc9c0 \uc54a\ub3c4\ub85d \uc8fc\uc758\ud574\uc57c \ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># \ubbf8\ub798 30\uc77c \ub3d9\uc548\uc758 \uc8fc\uac00 \uc608\uce21\nforecast = model_fit.forecast(steps=30)<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uc608\uce21\ub41c \uac12\uc5d0\ub294 <code>nan<\/code> \uac12\uc774 \ud3ec\ud568\ub418\uc9c0 \uc54a\uc73c\uba70, \uc774 \uac12\uc740 \ubbf8\ub798\uc758 \uc8fc\uac00\ub97c \ucd94\uc815\ud558\ub294 \ub370 \uc0ac\uc6a9\ub429\ub2c8\ub2e4. \ud558\uc9c0\ub9cc \uc608\uce21\uac12\uacfc \uc2e4\uc81c\uac12\uc758 \uc778\ub371\uc2a4\uac00 \ub9de\uc9c0 \uc54a\uc73c\uba74 \uc5ec\uc804\ud788 <code>nan<\/code> \ubb38\uc81c\uac00 \ubc1c\uc0dd\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">4. \uc2e4\uc81c \ub370\uc774\ud130\uc640 \uc608\uce21\uac12\uc758 \uc778\ub371\uc2a4 \ub9de\ucd94\uae30<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\ub2e4\uc74c\uc73c\ub85c, \uc608\uce21\ub41c \ub370\uc774\ud130\uc640 \uc2e4\uc81c \ub370\uc774\ud130\uc758 \uc778\ub371\uc2a4\ub97c \ub9de\ucd94\ub294 \uac83\uc774 \uc911\uc694\ud569\ub2c8\ub2e4. \ub9cc\uc57d \uc778\ub371\uc2a4\uac00 \uc77c\uce58\ud558\uc9c0 \uc54a\uc73c\uba74, \uc608\uce21\uac12\uacfc \uc2e4\uc81c\uac12\uc744 \ube44\uad50\ud560 \ub54c <code>nan<\/code>\uc774 \ubc1c\uc0dd\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc544\ub798 \ucf54\ub4dc\ub97c \uc0ac\uc6a9\ud574 \uc778\ub371\uc2a4\ub97c \ub9de\ucdb0\uc90d\ub2c8\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># \uc2e4\uc81c \ub370\uc774\ud130 \uc911 \ub9c8\uc9c0\ub9c9 30\uc77c \ucd94\ucd9c\nsp500_last_30 = sp500_close_clean&#91;-30:]\n\n# \uc608\uce21\uac12\uc758 \uc778\ub371\uc2a4\ub97c \uc2e4\uc81c \ub370\uc774\ud130\uc758 \uc778\ub371\uc2a4\ub85c \uc124\uc815\nforecast.index = sp500_last_30.index<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uc774 \ucf54\ub4dc\ub97c \uc0ac\uc6a9\ud558\uba74 \uc608\uce21\ub41c \uac12\uacfc \uc2e4\uc81c \ub370\uc774\ud130\uc758 \uc778\ub371\uc2a4\uac00 \uc77c\uce58\ud558\uac8c \ub418\uc5b4, \ube44\uad50 \uc2dc <code>nan<\/code>\uc774 \ubc1c\uc0dd\ud558\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">5. \ud3c9\uade0 \uc81c\uacf1 \uc624\ucc28(MSE) \uacc4\uc0b0<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">\uc774\uc81c <code>nan<\/code> \ubb38\uc81c\ub97c \ud574\uacb0\ud588\uc73c\ubbc0\ub85c, \uc608\uce21\uac12\uacfc \uc2e4\uc81c\uac12 \uac04\uc758 <strong><a href=\"https:\/\/ailib.secondlife.lol\/mean-squared-error-mse\/\">\ud3c9\uade0 \uc81c\uacf1 \uc624\ucc28(MSE)<\/a><\/strong>\ub97c \uc815\uc0c1\uc801\uc73c\ub85c \uacc4\uc0b0\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># \ud3c9\uade0 \uc81c\uacf1 \uc624\ucc28(MSE) \uacc4\uc0b0\nmse = ((sp500_last_30 - forecast)**2).mean()\nprint(f'\ud3c9\uade0 \uc81c\uacf1 \uc624\ucc28(MSE): {mse}')<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">\uc774 \ucf54\ub4dc\ub97c \ud1b5\ud574 <code>nan<\/code> \ubb38\uc81c \uc5c6\uc774 MSE\ub97c \uacc4\uc0b0\ud558\uace0, \ubaa8\ub378\uc758 \uc131\ub2a5\uc744 \ud3c9\uac00\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n<style>.wp-block-kadence-advancedheading.kt-adv-heading2561_e307bf-42, .wp-block-kadence-advancedheading.kt-adv-heading2561_e307bf-42[data-kb-block=\"kb-adv-heading2561_e307bf-42\"]{font-style:normal;}.wp-block-kadence-advancedheading.kt-adv-heading2561_e307bf-42 mark.kt-highlight, .wp-block-kadence-advancedheading.kt-adv-heading2561_e307bf-42[data-kb-block=\"kb-adv-heading2561_e307bf-42\"] mark.kt-highlight{font-style:normal;color:#f76a0c;-webkit-box-decoration-break:clone;box-decoration-break:clone;padding-top:0px;padding-right:0px;padding-bottom:0px;padding-left:0px;}.wp-block-kadence-advancedheading.kt-adv-heading2561_e307bf-42 img.kb-inline-image, .wp-block-kadence-advancedheading.kt-adv-heading2561_e307bf-42[data-kb-block=\"kb-adv-heading2561_e307bf-42\"] img.kb-inline-image{width:150px;vertical-align:baseline;}<\/style>\n<h2 class=\"kt-adv-heading2561_e307bf-42 wp-block-kadence-advancedheading\" data-kb-block=\"kb-adv-heading2561_e307bf-42\">\uc804\uccb4 \uc218\uc815\ucf54\ub4dc<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>import yfinance as yf\nfrom statsmodels.tsa.arima.model import ARIMA\nimport matplotlib.pyplot as plt\n\n# S&amp;P 500 \ub370\uc774\ud130 \ub2e4\uc6b4\ub85c\ub4dc \ubc0f NaN \uac12 \uc81c\uac70\nsp500 = yf.download('^GSPC', start='2010-01-01', end='2023-01-01')\nsp500_close_clean = sp500&#91;'Close'].dropna()\n\n# ARIMA \ubaa8\ub378 \ud559\uc2b5\nmodel = ARIMA(sp500_close_clean, order=(5, 1, 0))\nmodel_fit = model.fit()\n\n# \ubbf8\ub798 30\uc77c \uc608\uce21\nforecast = model_fit.forecast(steps=30)\n\n# \ub9c8\uc9c0\ub9c9 30\uc77c \uc2e4\uc81c \ub370\uc774\ud130\nsp500_last_30 = sp500_close_clean&#91;-30:]\n\n# \uc608\uce21\uac12\uc758 \uc778\ub371\uc2a4\ub97c \uc2e4\uc81c \ub370\uc774\ud130\uc758 \uc778\ub371\uc2a4\ub85c \uc124\uc815\nforecast.index = sp500_last_30.index\n\n# \ud3c9\uade0 \uc81c\uacf1 \uc624\ucc28(MSE) \uacc4\uc0b0\nmse = ((sp500_last_30 - forecast)**2).mean()\nprint(f'\ud3c9\uade0 \uc81c\uacf1 \uc624\ucc28(MSE): {mse}')\n\n# AIC \uac12 \ucd9c\ub825\nprint(f'AIC: {model_fit.aic}')<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code># \uacb0\uacfc\uac12\n\ud3c9\uade0 \uc81c\uacf1 \uc624\ucc28(MSE): 15599.163498498263\nAIC: 31515.10069070282<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\">\uc815\ub9ac\ud558\uae30<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\uc774\ubc88 \ud3ec\uc2a4\ud2b8\uc5d0\uc11c\ub294 \ud30c\uc774\uc36c nan \uc81c\uac70 \ubc29\ubc95\uc744 \ud1b5\ud574 ARIMA \ubaa8\ub378 \uc608\uce21\uc5d0\uc11c \ubc1c\uc0dd\ud55c <code>nan<\/code> \ubb38\uc81c\ub97c \ud574\uacb0\ud558\ub294 \uacfc\uc815\uc744 \ub2e4\ub918\uc2b5\ub2c8\ub2e4. \ub370\uc774\ud130\uc14b\uc758 <code>nan<\/code> \uac12\uc744 \uc81c\uac70\ud558\uace0, \uc608\uce21\uac12\uacfc \uc2e4\uc81c \ub370\uc774\ud130\uc758 \uc778\ub371\uc2a4\ub97c \ub9de\ucd94\ub294 \uacfc\uc815\uc774 \uc911\uc694\ud558\uba70, \uc774\ub97c \ud1b5\ud574 <code>nan<\/code> \uc5c6\uc774 \uc608\uce21 \ubaa8\ub378\uc744 \uc815\ud655\ud558\uac8c \ud3c9\uac00\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u5728\u4e0a\u4e00\u7bc7\u6587\u7ae0\u4e2d\uff0c\u6211\u4eec\u5206\u6790\u4e86\u6807\u51c6\u666e\u5c14 500 \u6307\u6570\u7684\u80a1\u7968\u6570\u636e\uff0c\u5e76\u4f7f\u7528 ARIMA \u6a21\u578b\u6765...<\/p>","protected":false},"author":3,"featured_media":2577,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_kad_blocks_custom_css":"","_kad_blocks_head_custom_js":"","_kad_blocks_body_custom_js":"","_kad_blocks_footer_custom_js":"","_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"_kad_post_classname":"","footnotes":""},"categories":[3],"tags":[247,255,252,256,254,244,253,245,33],"class_list":["post-2561","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-python-coding","tag-arima","tag-mse","tag-nan-","tag-256","tag-254","tag-244","tag-253","tag-245","tag-33"],"taxonomy_info":{"category":[{"value":3,"label":"\ud30c\uc774\uc36c(Python)"}],"post_tag":[{"value":247,"label":"ARIMA"},{"value":255,"label":"MSE"},{"value":252,"label":"nan \uc624\ub958"},{"value":256,"label":"\ub370\uc774\ud130 \uc815\ub9ac"},{"value":254,"label":"\ubaa8\ub378 \ud3c9\uac00"},{"value":244,"label":"\uc2dc\uacc4\uc5f4 \ubd84\uc11d"},{"value":253,"label":"\uc608\uce21"},{"value":245,"label":"\uc8fc\uc2dd \ub370\uc774\ud130"},{"value":33,"label":"\ud30c\uc774\uc36c"}]},"featured_image_src_large":["https:\/\/secondlife.lol\/wp-content\/uploads\/2024\/09\/\ud30c\uc774\uc36c-nan-\uc81c\uac70-\ud3ec\uc2a4\ud2b8-\uc378\ub124\uc77c-600x600.jpg",600,600,true],"author_info":{"display_name":"TERE","author_link":"https:\/\/secondlife.lol\/zh\/author\/tere\/"},"comment_info":0,"category_info":[{"term_id":3,"name":"\ud30c\uc774\uc36c(Python)","slug":"python-coding","term_group":0,"term_taxonomy_id":3,"taxonomy":"category","description":"","parent":20,"count":119,"filter":"raw","cat_ID":3,"category_count":119,"category_description":"","cat_name":"\ud30c\uc774\uc36c(Python)","category_nicename":"python-coding","category_parent":20}],"tag_info":[{"term_id":247,"name":"ARIMA","slug":"arima","term_group":0,"term_taxonomy_id":247,"taxonomy":"post_tag","description":"","parent":0,"count":3,"filter":"raw"},{"term_id":255,"name":"MSE","slug":"mse","term_group":0,"term_taxonomy_id":255,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"},{"term_id":252,"name":"nan \uc624\ub958","slug":"nan-%ec%98%a4%eb%a5%98","term_group":0,"term_taxonomy_id":253,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"},{"term_id":256,"name":"\ub370\uc774\ud130 \uc815\ub9ac","slug":"%eb%8d%b0%ec%9d%b4%ed%84%b0-%ec%a0%95%eb%a6%ac","term_group":0,"term_taxonomy_id":256,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"},{"term_id":254,"name":"\ubaa8\ub378 \ud3c9\uac00","slug":"%eb%aa%a8%eb%8d%b8-%ed%8f%89%ea%b0%80","term_group":0,"term_taxonomy_id":254,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"},{"term_id":244,"name":"\uc2dc\uacc4\uc5f4 \ubd84\uc11d","slug":"%ec%8b%9c%ea%b3%84%ec%97%b4-%eb%b6%84%ec%84%9d","term_group":0,"term_taxonomy_id":244,"taxonomy":"post_tag","description":"","parent":0,"count":2,"filter":"raw"},{"term_id":253,"name":"\uc608\uce21","slug":"%ec%98%88%ec%b8%a1","term_group":0,"term_taxonomy_id":252,"taxonomy":"post_tag","description":"","parent":0,"count":1,"filter":"raw"},{"term_id":245,"name":"\uc8fc\uc2dd \ub370\uc774\ud130","slug":"%ec%a3%bc%ec%8b%9d-%eb%8d%b0%ec%9d%b4%ed%84%b0","term_group":0,"term_taxonomy_id":245,"taxonomy":"post_tag","description":"","parent":0,"count":3,"filter":"raw"},{"term_id":33,"name":"\ud30c\uc774\uc36c","slug":"%ed%8c%8c%ec%9d%b4%ec%8d%ac","term_group":0,"term_taxonomy_id":33,"taxonomy":"post_tag","description":"","parent":0,"count":30,"filter":"raw"}],"_links":{"self":[{"href":"https:\/\/secondlife.lol\/zh\/wp-json\/wp\/v2\/posts\/2561","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/secondlife.lol\/zh\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/secondlife.lol\/zh\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/secondlife.lol\/zh\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/secondlife.lol\/zh\/wp-json\/wp\/v2\/comments?post=2561"}],"version-history":[{"count":9,"href":"https:\/\/secondlife.lol\/zh\/wp-json\/wp\/v2\/posts\/2561\/revisions"}],"predecessor-version":[{"id":2618,"href":"https:\/\/secondlife.lol\/zh\/wp-json\/wp\/v2\/posts\/2561\/revisions\/2618"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/secondlife.lol\/zh\/wp-json\/wp\/v2\/media\/2577"}],"wp:attachment":[{"href":"https:\/\/secondlife.lol\/zh\/wp-json\/wp\/v2\/media?parent=2561"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/secondlife.lol\/zh\/wp-json\/wp\/v2\/categories?post=2561"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/secondlife.lol\/zh\/wp-json\/wp\/v2\/tags?post=2561"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}