EADST

Using SVR to Do Sales Forecasts

I used python pandas package to load the data, and sklearn package to do predictions.

# -*- coding: UTF-8 -*-
import pandas as pd

data_frame = pd.read_excel('sample.xlsx',
                         sheet_name='xdata-1')

days = data_frame['day_of_year'].unique()
# pay_time = data_frame['pay_time'].unique()
# day_of_week = data_frame['day_of_week'].unique()
# week_of_year = data_frame['month_of_year'].unique()
# act_class = data_frame['act_class'].unique()

x, y = [], []
for day in days:
    df1 = data_frame[(data_frame['day_of_year'] == day)]['num'].sum()
    df2 = data_frame[(data_frame['day_of_year'] == day)]['pay_price'].sum()
    df3 = data_frame[(data_frame['day_of_year'] == day)]['act_class'].sum()
    df4 = data_frame[(data_frame['day_of_year'] == day)]['month_of_year'].sum()
    df5 = data_frame[(data_frame['day_of_year'] == day)]['week_of_year'].sum()
    df6 = data_frame[(data_frame['day_of_year'] == day)]['day_of_month'].sum()
    df7 = data_frame[(data_frame['day_of_year'] == day)]['day_of_week'].sum()
    # x.append([day, round(df2/float(df1), 2), round(df3/float(df1), 2)])
    x.append([day, round(df2 / float(df1), 2), round(df3 / float(df1), 2),
              df4, df5, df6, df7])
    y.append(df1)

import matplotlib.pyplot as plt
import numpy as np
from sklearn.model_selection import train_test_split
from sklearn.svm import SVR
from sklearn.metrics import r2_score, mean_squared_error, mean_absolute_error, accuracy_score
np.random.seed(0)
x.extend(x[-3:])
y.extend(y[-3:])

x = np.array(x)
y = np.array(y)

clf = SVR(kernel='linear', C=20)
# x_tran, x_test, y_train, y_test = train_test_split(x, y, test_size=0.25)


x_tran, x_test, y_train, y_test = x[:-3], x[-3:], y[:-3], y[-3:]
clf.fit(x_tran, y_train)
y_hat = clf.predict(x_test)
print(y_hat)
print("R2:", r2_score(y_test, y_hat))
print("RMSE:", np.sqrt(mean_squared_error(y_test, y_hat)))
print("MAE:", mean_absolute_error(y_test, y_hat))
# print("Accuracy: ", accuracy_score(y_test, y_hat))
r = len(x_test) + 1
# print(y_test)
plt.plot(np.arange(1,r), y_hat, 'go-', label="predict")
plt.plot(np.arange(1,r), y_test, 'co-', label="real")
plt.legend()
plt.show()

相关标签
About Me
XD
Goals determine what you are going to be.
Category
标签云
Use RGB tqdm Plotly Windows Translation 算法题 AI 图形思考法 TensorFlow Harness HaggingFace 腾讯云 Card Vim GoogLeNet Search Base64 CUDA Llama GPTQ Quantize Land 继承 Algorithm 多进程 Augmentation Paddle Github Logo SQL TSV Statistics ModelScope Tracking CEIR 阿里云 mmap SPIE Gemma Transformers Michelin Linux PyTorch Web CAM Tensor Qwen2 EXCEL VSCode printf ResNet-50 MD5 LLM ONNX Nginx IndexTTS2 自我改进 Hilton API FlashAttention Ptyhon Anaconda Domain Pillow Random Template Paper v2ray SQLite SAM LLAMA Docker 多线程 Distillation Clash Firewall Breakpoint Django Bert 搞笑 XML Jev LaTeX Mixtral YOLO Ubuntu News Permission torchinfo LeetCode CSV Qwen2.5 Miniforge 关于博主 CV FastAPI PDB InvalidArgumentError Quantization Git Heatmap WebCrawler Rebuttal Knowledge Bipartite git hf 公式 Crawler Shortcut TTS Bitcoin transformers NameSilo Jetson Pytorch Attention Cloudreve Animate Disk Image2Text Dataset FP16 证件照 tar scipy Input WAN GPT4 Math NLTK API网关 QWEN ChatGPT Safetensors Website TensorRT CC BeautifulSoup 论文速读 版权 Excel FP64 BF16 ms-swift PIP diffusers OpenAI 飞书 BTC Jupyter icon OpenCV 论文 GIT SVR 第一性原理 UNIX OCR Sklearn Pandas Hungarian XGBoost HuggingFace RL llama.cpp Pickle FP32 Google Python logger Review CLAP 顶会 音频 Zip Interview Diagram Baidu Food DeepStream Freesound Video Color 报税 FP8 VPN uWSGI VGG-16 Tiktoken Proxy Magnet Data RAR Password UI Vmess 强化学习 签证 uwsgi Bin LoRA Markdown GGML 递归学习法 Plate Datetime v0.dev PyCharm JSON Numpy Claude DeepSeek Streamlit 云服务器 C++ 财报 COCO git-lfs 长期记忆 Conda CTC PDF Agent NLP 域名 Hotel Qwen 净利润 图标
站点统计

本站现有博文339篇,共被浏览1000157次

本站已经建立2710天!

热门文章
文章归档
回到顶部