ホームページ >バックエンド開発 >Python チュートリアル >Django Prophet: 初心者から上級者まで時系列分析アプリケーションを構築する
Django Prophet: 入門から上級まで、時系列分析アプリケーションの構築には特定のコード例が必要です
時系列分析は重要な統計分析手法です。時系列データの変化する傾向、周期性、季節性、外れ値を研究します。データサイエンスや機械学習の発展に伴い、市場動向や経済指標の予測・検討などの分野で時系列分析の重要性が高まっています。
Django Prophet は、統計手法と機械学習テクノロジーを組み合わせて、使いやすく高度にカスタマイズ可能な時系列予測機能を提供する Python ベースの時系列分析ツールです。この記事では、Django Prophet を使用して時系列分析アプリケーションを構築する方法を紹介し、具体的なコード例を示します。
まず、Django Prophet をインストールする必要があります。ターミナルまたはコマンド プロンプトを開き、次のコマンドを実行します。
pip install django-prophet
次に、Django プロジェクトを作成する必要があります。コマンド ラインで次のコマンドを実行します。
django-admin startproject timeseries_app cd timeseries_app
timeseries_app ディレクトリで次のコマンドを実行して、timeseries という名前の Django アプリケーションを作成します。
python manage.py startapp timeseries
次に、次のように settings.py ファイルの INSTALLED_APPS リストに「timeseries」を追加します。
INSTALLED_APPS = [ ... 'timeseries', ... ]
In Create a
from django.db import models class TimeSeries(models.Model): timestamp = models.DateTimeField() value = models.FloatField() def __str__(self): return self.timestamp.strftime('%Y-%m-%d %H:%M:%S')
このモデル クラスには、タイムスタンプと値の 2 つのフィールドが含まれており、それぞれタイムスタンプと対応する値を表します。
Django プロジェクトでは、通常、Django 管理のバックグラウンドを使用してデータを管理します。 timeseries ディレクトリの admin.py ファイルに次のコードを記述して、管理バックグラウンドで TimeSeries モデル データを追加および管理できるようにします:
from django.contrib import admin from timeseries.models import TimeSeries admin.site.register(TimeSeries)
Start Django はサーバーを開発し、管理バックグラウンドにログインして時系列データをアップロードします。ブラウザに次の URL を入力します:
http://localhost:8000/admin
次に、管理者アカウントでログインし、[時系列] リンクをクリックし、ページの右上隅にある [追加] ボタンをクリックして時刻を追加します。シリーズオブジェクト。
次に、アップロードされた時系列データを分析および予測するためのコードを view 関数に記述します。 timeseries/views.py ファイルを開いて、次のコードを追加します。
from django.shortcuts import render from timeseries.models import TimeSeries def analyze_time_series(request): time_series = TimeSeries.objects.all() # 将时间序列数据整理为Prophet所需的格式 data = [] for ts in time_series: data.append({'ds': ts.timestamp, 'y': ts.value}) # 使用Django Prophet进行时间序列分析和预测 from prophet import Prophet model = Prophet() model.fit(data) future = model.make_future_dataframe(periods=365) forecast = model.predict(future) # 将分析结果传递到模板中进行展示 context = { 'time_series': time_series, 'forecast': forecast, } return render(request, 'analyze_time_series.html', context)
上記のコードでは、まずデータベースからすべての時系列データを取得し、Django Prophet が必要とする形式に整理します。次に、データを適合および予測するための Prophet インスタンスを作成します。最後に、分析結果がテンプレートに渡されます。
時系列の分析結果を表示するために、analyze_time_series.html という名前のテンプレート ファイルを作成します。次の HTML コードを記述します。
<!DOCTYPE html> <html> <head> <title>Analyze Time Series</title> </head> <body> <h1>Time Series Data</h1> <ul> {% for ts in time_series %} <li>{{ ts }}</li> {% empty %} <li>No time series data available.</li> {% endfor %} </ul> <h1>Forecast</h1> <table> <tr> <th>Timestamp</th> <th>Predicted Value</th> <th>Lower Bound</th> <th>Upper Bound</th> </tr> {% for row in forecast.iterrows %} <tr> <td>{{ row.ds }}</td> <td>{{ row.yhat }}</td> <td>{{ row.yhat_lower }}</td> <td>{{ row.yhat_upper }}</td> </tr> {% endfor %} </table> </body> </html>
上記のテンプレートでは、Django が提供するテンプレート エンジンを使用して、時系列データと予測結果を表示します。
最後のステップは、ブラウザーを通じて分析ページにアクセスできるように URL ルーティングを構成することです。次のコードを timeseries_app ディレクトリの urls.py ファイルに追加します。
from django.contrib import admin from django.urls import path from timeseries.views import analyze_time_series urlpatterns = [ path('admin/', admin.site.urls), path('analyze/', analyze_time_series), ]
これで、Django アプリケーションを実行して時系列分析を表示できるようになります。結果。コマンド ラインで次のコマンドを実行します。
python manage.py runserver
次に、ブラウザに次の URL を入力します。
http://localhost:8000/analyze
時系列データと予測結果のページが表示されます。
上記は、Django Prophet を使用して入門から上級までの時系列分析アプリケーションを構築する方法についてのすべてです。この記事が時系列分析と Django Prophet に関する実践的なコード例を提供し、時系列分析の世界をさらに探求するのに役立つことを願っています。
以上がDjango Prophet: 初心者から上級者まで時系列分析アプリケーションを構築するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。