用python输出由1,2,3,4这四个数字组成的素数,并且在每个素数中每个数字只用一次
时间: 2023-06-10 07:03:54 浏览: 60
import pandas as pd
import matplotlib.pyplot as plt
#读取csv文件
df = pd.read_csv('example.csv')
#将日期字段转换为日期类型
df['date'] = pd.to_datetime(df['date'])
#根据日期提取月份
df['month'] = df['date'].dt.month
#创建月初、月中、月末的日期范围
month_begin = pd.date_range(start=df['date'].min(), end=df['date'].max(), freq='MS')
month_middle = pd.date_range(start=df['date'].min(), end=df['date'].max(), freq='15D')
month_end = pd.date_range(start=df['date'].min(), end=df['date'].max(), freq='M')
#根据日期范围将数据分组
df['group'] = pd.cut(df['date'], bins=[month_begin, month_middle, month_end], labels=['month_begin', 'month_middle', 'month_end'])
#统计每组的产品需求量
grouped = df.groupby(['month', 'group'])['demand'].sum().reset_index()
#绘制饼图
data = grouped[grouped['group']=='month_begin'].set_index('month')['demand']
plt.pie(data, labels=data.index, autopct='%1.1f%%')
plt.title('Monthly demand at beginning')
plt.show()
data = grouped[grouped['group']=='month_middle'].set_index('month')['demand']
plt.pie(data, labels=data.index, autopct='%1.1f%%')
plt.title('Monthly demand at middle')
plt.show()
data = grouped[grouped['group']=='month_end'].set_index('month')['demand']
plt.pie(data, labels=data.index, autopct='%1.1f%%')
plt.title('Monthly demand at end')
plt.show()
#绘制折线图
data = grouped[grouped['group']=='month_begin']
plt.plot(data['month'], data['demand'], label='Month Begin')
data = grouped[grouped['group']=='month_middle']
plt.plot(data['month'], data['demand'], label='Month Middle')
data = grouped[grouped['group']=='month_end']
plt.plot(data['month'], data['demand'], label='Month End')
plt.legend()
plt.title('Monthly Demand')
plt.show()