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

本站现有博文327篇,共被浏览833070

本站已经建立2538天!

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