题解 | #某店铺用户消费特征评分#
某店铺用户消费特征评分
https://www.nowcoder.com/practice/200c824e9ed4428491c27d65ec56067d
import pandas as pd sales = pd.read_csv('sales.csv') r1 = sales['recency'].quantile(q = 0.25) r2 = sales['recency'].quantile(q = 0.5) r3 = sales['recency'].quantile(q = 0.75) r4 =sales['recency'].max() r_bins =[0,r1,r2,r3,r4] r_label = [4,3,2,1] f1 = sales['frequency'].quantile(q = 0.25) f2 = sales['frequency'].quantile(q = 0.5) f3 = sales['frequency'].quantile(q = 0.75) f4 =sales['frequency'].max() f_bins =[0,f1,f2,f3,f4] f_label = [1,2,3,4] m1 = sales['monetary'].quantile(q = 0.25) m2 = sales['monetary'].quantile(q = 0.5) m3 = sales['monetary'].quantile(q = 0.75) m4 =sales['monetary'].max() m_bins =[0,m1,m2,m3,m4] m_label =[1,2,3,4] sales['R_Quartile']=pd.cut(sales['recency'],bins=r_bins,labels=r_label,right=True).astype('int') sales['F_Quartile']=pd.cut(sales['frequency'],bins=f_bins,labels=f_label,right=True).astype('int') sales['M_Quartile']=pd.cut(sales['monetary'],bins=m_bins,labels=m_label,right=True).astype('int') pd.set_option('display.max_columns', None)# 显示所有的列,而不是以……显示 pd.set_option('display.max_rows', None)# 显示所有的行,而不是以……显示 pd.set_option('display.width', None) # 不自动换行显示 print(sales.head(5))