Wie verwende ich Django Prophet für Zeitreihenvorhersagen?
Zeitreihen sind ein Datentyp, der in vielen Bereichen von Bedeutung ist. Dabei geht es um die Analyse und Prognose zeitbezogener Daten. Im Python-Data-Science-Ökosystem gibt es viele Tools und Bibliotheken für die Zeitreihenvorhersage. Unter anderem ist Prophet eine leistungsstarke und benutzerfreundliche Bibliothek, die von Facebook entwickelt wurde und schnell und genau Zeitreihenvorhersagen durchführen kann.
In diesem Artikel erklären wir ausführlich, wie man Django Prophet für die Zeitreihenvorhersage verwendet. Wir behandeln Aspekte wie Datenvorbereitung, Modelltraining und Vorhersage anhand konkreter Codebeispiele.
Zuerst müssen wir Django Prophet über pip installieren. Führen Sie den folgenden Befehl im Terminal aus:
pip install django-prophet
Nach Abschluss der Installation müssen wir Django Prophet in das Django-Projekt einführen. Fügen Sie django_prophet
zur Liste INSTALLED_APPS
in der Datei „settings.py“ hinzu: INSTALLED_APPS
列表中添加django_prophet
:
INSTALLED_APPS = [ ... 'django_prophet', ... ]
在进行时间序列预测之前,我们需要有一个包含时间戳和相关值的数据集。在这个示例中,我们将使用一个包含每日销售额的CSV文件。首先,将CSV文件放在项目的某个目录下,并在models.py文件中创建一个模型类来表示数据:
from django.db import models class Sales(models.Model): date = models.DateField() value = models.FloatField()
然后,运行以下命令以创建数据表格:
python manage.py makemigrations python manage.py migrate
接下来,我们需要使用Django的数据迁移功能将CSV文件中的数据导入到数据库中。为此,我们可以创建一个自定义的Django管理命令。在项目的某个目录下创建一个名为import_sales.py
的文件,并添加以下代码:
from django.core.management.base import BaseCommand import csv from datetime import datetime from myapp.models import Sales class Command(BaseCommand): help = 'Import sales data from CSV file' def add_arguments(self, parser): parser.add_argument('csv_file', type=str, help='Path to the CSV file') def handle(self, *args, **options): csv_file = options['csv_file'] with open(csv_file, 'r') as file: reader = csv.reader(file) for row in reader: date = datetime.strptime(row[0], '%Y-%m-%d').date() value = float(row[1]) Sales.objects.create(date=date, value=value)
运行以下命令导入数据:
python manage.py import_sales path/to/csv/file.csv
接下来,我们将使用Django Prophet来训练模型并进行时间序列预测。首先,在models.py文件中添加以下代码:
from django.db import models from django_prophet.models import BaseModel class Sales(BaseModel): date = models.DateField() value = models.FloatField()
然后,在命令行中运行以下命令以创建和训练模型:
python manage.py prophet_create_model myapp.Sales
这将创建一个Prophet模型,并将其保存在数据库中以供后续使用。
现在,我们可以使用模型进行预测。在命令行中运行以下命令:
python manage.py prophet_make_forecast myapp.Sales
这将为每个日期生成一个预测值,并将其保存在数据库中。
最后,我们可以在视图中使用预测结果。在views.py文件中添加以下代码:
from django.shortcuts import render from myapp.models import Sales def sales_chart(request): sales = Sales.objects.all() predictions = [sale.prophet_prediction for sale in sales] context = { 'sales': sales, 'predictions': predictions } return render(request, 'sales_chart.html', context)
在templates文件夹中创建一个名为sales_chart.html
的HTML模板,该模板用于显示销售数据和预测结果。
现在,当用户访问/sales_chart
rrreee
rrreee
Führen Sie dann den folgenden Befehl aus, um die Datentabelle zu erstellen:rrreee
Als nächstes brauchen wir Verwenden Sie die Datenmigrationsfunktion von Django, um Daten aus der CSV-Datei in die Datenbank zu importieren. Dazu können wir einen benutzerdefinierten Django-Administratorbefehl erstellen. Erstellen Sie eine Datei mit dem Namenimport_sales.py
in einem Verzeichnis des Projekts und fügen Sie den folgenden Code hinzu: 🎜rrreee🎜Führen Sie den folgenden Befehl aus, um Daten zu importieren: 🎜rrreee🎜3. Trainingsmodell und Vorhersage🎜🎜Connect Next , werden wir Django Prophet verwenden, um das Modell zu trainieren und Zeitreihenvorhersagen durchzuführen. Fügen Sie zunächst den folgenden Code in die Datei models.py ein: 🎜rrreee🎜 Führen Sie dann den folgenden Befehl in der Befehlszeile aus, um das Modell zu erstellen und zu trainieren: 🎜rrreee🎜 Dadurch wird ein Prophet-Modell erstellt und für später in der Datenbank gespeichert verwenden. 🎜🎜Jetzt können wir das Modell verwenden, um Vorhersagen zu treffen. Führen Sie den folgenden Befehl in der Befehlszeile aus: 🎜rrreee🎜 Dadurch wird für jedes Datum ein vorhergesagter Wert generiert und in der Datenbank gespeichert. 🎜🎜Endlich können wir die Vorhersageergebnisse in der Ansicht verwenden. Fügen Sie den folgenden Code in die Datei „views.py“ ein: 🎜rrreee🎜Erstellen Sie im Vorlagenordner eine HTML-Vorlage mit dem Namen sales_chart.html
, die zum Anzeigen von Verkaufsdaten und Prognoseergebnissen verwendet wird. 🎜🎜Wenn der Benutzer nun die Seite /sales_chart
besucht, werden Verkaufsdaten und Prognosediagramme angezeigt. 🎜🎜Fazit🎜🎜In diesem Artikel wird detailliert beschrieben, wie Sie Django Prophet für Zeitreihenvorhersagen verwenden. Wir behandeln Datenvorbereitung, Modelltraining und Vorhersage und stellen konkrete Codebeispiele bereit. Durch den Einsatz von Django Prophet können wir einfach und genau Zeitreihenprognosen erstellen, um Geschäftsentscheidungen umfassend zu unterstützen. 🎜🎜Bitte beachten Sie, dass dieser Artikel nur die grundlegende Verwendung und Beispiele enthält. Sie können je nach Ihren spezifischen Anforderungen weitere Anpassungen und Verbesserungen vornehmen. Ich hoffe, dieser Artikel war hilfreich und wünsche Ihnen viel Erfolg bei der Zeitreihenanalyse und -prognose! 🎜Das obige ist der detaillierte Inhalt vonWie verwende ich Django Prophet für Zeitreihenvorhersagen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!