Django Prophet ialah alat analisis siri masa berdasarkan Python Ia boleh digabungkan dengan rangka kerja Django untuk melakukan analisis dan ramalan siri masa dengan mudah. Artikel ini akan memperkenalkan amalan terbaik Django Prophet dan memberikan contoh kod khusus.
1. Pemasangan dan konfigurasi
Pertama, kita perlu memasang Django Prophet dan perpustakaan bergantungnya. Ia boleh dipasang melalui arahan pip:
pip install django-prophet forecaster
Seterusnya, tambahkan konfigurasi berikut dalam fail settings.py projek Django:
INSTALLED_APPS = [ ... 'prophet', ... ] PROPHET = { 'MODEL_PATH': os.path.join(BASE_DIR, 'model'), # 模型路径 'FORECAST_PATH': os.path.join(BASE_DIR, 'forecast'), # 预测结果路径 }
Dalam konfigurasi di atas, kami nyatakan model dan laluan penyimpanan hasil ramalan.
2. Penyediaan dan import data
Sebelum menjalankan analisis siri masa, kita perlu menyediakan data dan mengimportnya ke dalam pangkalan data Django. Anda boleh memilih format CSV atau mengimport data melalui pertanyaan pangkalan data. Berikut ialah contoh kelas model untuk menyimpan data siri masa:
from django.db import models class TimeSeriesData(models.Model): date = models.DateField() value = models.FloatField()
Melalui fungsi pemindahan data Django, kelas model boleh dipetakan ke jadual pangkalan data:
rreee3. Analisis siri masa
Seterusnya, kita boleh menggunakan Django Prophet untuk analisis siri masa. Berikut ialah contoh fungsi paparan:
python manage.py makemigrations python manage.py migrate
Kod di atas mula-mula memperoleh data siri masa daripada pangkalan data dan menukarnya menjadi objek Pandas DataFrame. Kemudian, buat model Nabi dan latihnya menggunakan data.
Seterusnya, kami menggunakan fungsi make_future_dataframe untuk menjana julat masa yang perlu diramal, dan menggunakan fungsi ramalan untuk meramal. Keputusan ramalan disimpan dalam objek ramalan.
Akhir sekali, kami menyerahkan hasil ramalan kepada templat analyze.html untuk paparan.
4. Paparan templat
Dalam templat analyze.html, kita boleh menggunakan kod berikut untuk memaparkan hasil ramalan:
from django.shortcuts import render from prophet import Prophet def analyze(request): data = TimeSeriesData.objects.all().order_by('date') dates = [item.date for item in data] values = [item.value for item in data] df = pd.DataFrame({'ds': dates, 'y': values}) m = Prophet() m.fit(df) future = m.make_future_dataframe(periods=365) forecast = m.predict(future) forecast_data = forecast[['ds', 'yhat', 'yhat_lower', 'yhat_upper']] return render(request, 'analyze.html', {'forecast_data': forecast_data})
Di atas kod menggunakan gelung untuk Lelaran ke atas keputusan ramalan dan paparkan tarikh, nilai ramalan serta sempadan atas dan bawah.
Ringkasan:
Melalui langkah di atas, kita boleh melaksanakan analisis siri masa berdasarkan Django Nabi. Proses ini termasuk pemasangan dan konfigurasi, penyediaan dan import data, analisis siri masa dan pembentangan templat. Dengan mengkonfigurasi parameter dan model dengan betul, kami boleh memperoleh ramalan siri masa yang lebih tepat.
Perlu diingat bahawa contoh di atas menggunakan model linear mudah. Untuk siri masa yang kompleks, ketepatan ramalan boleh dipertingkatkan dengan melaraskan parameter model Nabi dan menambah kejuruteraan ciri.
Atas ialah kandungan terperinci Apakah amalan terbaik untuk melaksanakan analisis siri masa dengan Django Prophet?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!