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

本站现有博文335篇,共被浏览937391

本站已经建立2648天!

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