用python写一个对销售额的数据分析,列名包括日期,销售额,门店,日期是从2019年的1月1日到2019年的1月15日。一共有两个门店。我想计算两个门店15天的总销售额,销售的平均值,然后选出两个店15天当中销售额最大的日期。然后分别根据两个店的销售数据进行预测接下来五天的销售数据。我的日期类型经过了parse_dates=['日期'],日期格式是2019-01-20 00:00:00, python列举出2019年一月16日到20日的日期的列表,并且日期的格式是2019-01-20 00:00:00,然后用 LinearRegression预测这这个list当中的五天的销售额
时间: 2024-04-16 16:28:39 浏览: 68
以下是用 Python 进行数据分析和预测的示例代码:
```python
import pandas as pd
from sklearn.linear_model import LinearRegression
# 创建数据框
data = {
'日期': ['2019-01-01', '2019-01-02', '2019-01-03', '2019-01-04', '2019-01-05', '2019-01-06', '2019-01-07',
'2019-01-08', '2019-01-09', '2019-01-10', '2019-01-11', '2019-01-12', '2019-01-13', '2019-01-14',
'2019-01-15'],
'销售额': [100, 150, 200, 250, 300, 350, 400, 450, 500, 550, 600, 650, 700, 750, 800],
'门店': ['A', 'A', 'A', 'A', 'A', 'A', 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'B', 'B']
}
df = pd.DataFrame(data)
# 计算总销售额和销售平均值
total_sales = df.groupby('门店')['销售额'].sum()
average_sales = df.groupby('门店')['销售额'].mean()
# 找出销售额最大的日期
max_sales_date = df[df['销售额'] == df['销售额'].max()]['日期'].values[0]
# 创建预测日期列表
prediction_dates = pd.date_range(start='2019-01-16', end='2019-01-20')
# 将日期格式转换为字符串
prediction_dates = [str(date.date()) for date in prediction_dates]
# 获取两个门店的销售数据
store_a_data = df[df['门店'] == 'A']
store_b_data = df[df['门店'] == 'B']
# 使用线性回归模型进行预测
regression = LinearRegression()
regression.fit(store_a_data.index.values.reshape(-1, 1), store_a_data['销售额'])
store_a_predictions = regression.predict([[i] for i in range(15, 20)])
regression.fit(store_b_data.index.values.reshape(-1, 1), store_b_data['销售额'])
store_b_predictions = regression.predict([[i] for i in range(10, 15)])
print("总销售额:")
print(total_sales)
print("\n销售平均值:")
print(average_sales)
print("\n销售额最大的日期:")
print(max_sales_date)
print("\n门店A的预测销售额:")
print(store_a_predictions)
print("\n门店B的预测销售额:")
print(store_b_predictions)
```
请注意,以上代码仅为示例,实际情况可能需要根据数据集的具体结构和预测需求进行适当调整。
阅读全文