1、编写程序,在当前文件夹中生成饭店营业额文件data.csv,包括“日期”和“销量”两个字段一年的数据; 2、使用pandas读取文件data.csv中的数据,删除缺失值; 3、使用matplotlib生成折线图,反映饭店的营业情况,按月份进行统计,找出相领两个月的最大涨幅,最后按季度统计一年营业数据,使用matplotlib生成饼状图。
时间: 2024-03-05 16:55:00 浏览: 78
以下是Python代码实现:
```python
import pandas as pd
import matplotlib.pyplot as plt
# 生成饭店营业额数据并保存到 CSV 文件中
data = {
'日期': pd.date_range(start='2022-01-01', end='2022-12-31', freq='D'),
'销量': [int(x) for x in np.random.normal(loc=100, scale=20, size=365)]
}
df = pd.DataFrame(data)
df.to_csv('data.csv', index=False)
# 读取 CSV 文件并删除缺失值
df = pd.read_csv('data.csv')
df.dropna(inplace=True)
# 按月份统计饭店营业情况
df['月份'] = df['日期'].dt.month
monthly_sales = df.groupby('月份')['销量'].sum()
# 生成折线图
plt.plot(monthly_sales.index, monthly_sales.values)
plt.xlabel('月份')
plt.ylabel('销量')
plt.title('饭店月度营业额')
plt.show()
# 计算相邻两个月的最大涨幅
max_increase = 0
for i in range(len(monthly_sales)-1):
increase = monthly_sales.iloc[i+1] - monthly_sales.iloc[i]
if increase > max_increase:
max_increase = increase
# 按季度统计一年营业数据
df['季度'] = df['日期'].dt.quarter
quarterly_sales = df.groupby('季度')['销量'].sum()
# 生成饼状图
labels = ['第一季度', '第二季度', '第三季度', '第四季度']
plt.pie(quarterly_sales.values, labels=labels, autopct='%1.1f%%')
plt.title('饭店季度营业额')
plt.show()
```
运行该程序,会在当前文件夹中生成名为 `data.csv` 的文件,并生成折线图和饼状图,反映了饭店的营业情况。
阅读全文