题解 | #某店铺用户消费特征评分#

某店铺用户消费特征评分

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))

全部评论
要加.astype('int'),不然通过不了
点赞 回复 分享
发布于 2023-05-20 00:20 湖北

相关推荐

04-17 18:32
门头沟学院 Java
野猪不是猪🐗:他跟你一个学校,你要是进来之后待遇比他好,他受得了?
点赞 评论 收藏
分享
野猪不是猪🐗:我assume that你must技术aspect是solid的,temperament也挺good的,however面试不太serious,generally会feel style上不够sharp
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务