"""user_ud 用户ID
order_dt: 购买日期
order_products: 购买产品数
order_amount: 购买金额"""
importpandas as pdimportnumpy as npimportmatplotlib.pyplot as plt
pd.set_option('display.max_columns', None) #显示完整的列
pd.set_option('display.max_rows', None) #显示完整的行
plt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签
columns= ['用户ID','购买日期','购买产品数','购买金额']
data= pd.read_table('CDNOW_master.txt',names=columns,sep='\s+') #names设置表头 \s+任意的空字符串
#查看是否存在缺失值#print(data.info())
#order_dt: 购买日期 转换成日期类型
#def time_style(x):#time = str(x)[0:4] + "-" + str(x)[4:6] + "-" + str(x)[6:8]#return time#data['购买日期'] = data['购买日期'].apply(time_style)
data['购买日期'] = pd.to_datetime(data['购买日期'],format="%Y%m%d")#print(data.head(3).dtypes)
#计算每个用户购买商品的平均数量#print(data.groupby('用户ID')['购买产品数'].mean())
#计算所每个用户购买商品的平均花费#print(data.groupby('用户ID')['购买金额'].mean())
#describe是描述统计 # 计算所有用户购买商品的平均数量#print(data.describe())
#M 对月进行统计
data['month'] = data['购买日期'].values.astype('datetime64[M]')print(data.head())#用户每月花费的总金额
use_months_by = data.groupby('m