泰迪杯数据分析比赛2018年B题解答-任务3补充3.2

   日期:2020-11-10     浏览:178    评论:0    
核心提示:泰迪杯数据分析比赛2018年B题解答-任务3补充3.2任务3-文章目录泰迪杯数据分析比赛2018年B题解答-任务3补充3.23.1全部代码:任务3.2实现代码:结尾泰迪杯数据地址: https://www.tipdm.org/bdrace/jljingsai/20181008/1488.html#sHref.前言:由于许多码友咨询3.2的任务代码,因此为了实现码友们的期望,特此补充3.2的实现代码。任务 3.2 在任务 3.1 的基础上进行标签拓展,依据标签生成完整的售货机画像,结果保存在 C

泰迪杯数据分析比赛2018年B题解答-任务3补充3.2

任务3-文章目录

  • 泰迪杯数据分析比赛2018年B题解答-任务3补充3.2
    • 3.1全部代码:
    • 任务3.2实现代码:
  • 结尾

泰迪杯数据地址: https://www.tipdm.org/bdrace/jljingsai/20181008/1488.html#sHref.

前言:由于许多码友咨询3.2的任务代码,因此为了实现码友们的期望,特此补充3.2的实现代码。

任务 3.2 在任务 3.1 的基础上进行标签拓展,依据标签生成完整的售货机画像,结果保存在 CSV 文件中,文件名分别为“task3-2A.csv”、task3- 2B.csv”、…、“task3-2E.csv”。依据此画像进行总结描述,给出营销意见。

因为任务3.2是基于任务3.1的代码,因此先展现出3.1的代码:

3.1全部代码:


import pandas as pd
from sklearn.cluster import KMeans
from sklearn import metrics
from sklearn import preprocessing
def task9(data):
    data1=pd.read_csv(r'D:\大数据学习\数据分析与挖掘\B题\\'+data,encoding='gbk')
    dalei=data1['商品'].unique().tolist()#提取出商品总列表,方便之后进行分类
    datasum=[]
    datasem=[]
    for i in dalei:
        data_x=data1[data1['商品']==i]['实际金额'].sum()
        data_t=data1[data1['商品']==i]['商品'].size
        datasum.append(data_x)#插入列表中
        datasem.append(data_t)
    task1_2 = pd.DataFrame({ '商品':dalei,'总实际金额':datasum,'销售量':datasem})#对列表进行整理,制作成表单
    X = preprocessing.minmax_scale(task1_2['销售量'])
    X = pd.DataFrame(X, columns=['销售量'])
    kmeans=KMeans(n_clusters=3)
    kmeans.fit(X)
    #将标签插入players表格中
    task1_2['cluster']=kmeans.labels_
    task1=list(task1_2['cluster'])
    for i in range(len(task1)):
        if(task1[i] == 2):
            task1[i] = '热销'
        elif(task1[i]==1):
            task1[i]='正常'
        elif(task1[i]==0):
            task1[i]='滞销'
    task1_2['cluster']=task1
    task1=task1_2['商品']
    task2=task1_2['cluster']
    task=pd.DataFrame({ '商品':task1,'标签':task2,'销售金额':datasum})
    return task
    #task.to_csv(r'D:\大数据学习\数据分析与挖掘\B题\result\\'+data_1,encoding='gbk')
a=task9('task1-A.csv')
b=task9('task1-B.csv')
c=task9('task1-C.csv')
d=task9('task1-D.csv')
e=task9('task1-E.csv')

本人任务3.2的处理方式与3.1的是相似的,如想看整体思想可以翻看任务3.1的博客,在此就不多做解释了。

任务3.2实现代码:

import pandas as pd
from sklearn.cluster import KMeans
from sklearn import metrics
from sklearn import preprocessing
def task10(date,date1):
    X=preprocessing.minmax_scale(date['销售金额'])
    X=pd.DataFrame(X,columns=['销售金额'])
    kmeans=KMeans(n_clusters=3)
    kmeans.fit(X)
    date['cluster']=kmeans.labels_
    task1=list(date['cluster'])
    for i in range(len(task1)):
        if(task1[i] == 2):
            task1[i] = '高金额'
        elif(task1[i]==1):
            task1[i]='普通'
        elif(task1[i]==0):
            task1[i]='低金额'
    date['cluster']=task1
    b=date['标签']+date['cluster']
    task=pd.DataFrame({ '商品':date['商品'],'销售标签':date['标签'],
                       '总金额标签':date['cluster'],'商品总体画像':b})
     task.to_csv(r'D:\大数据学习\数据分析与挖掘\B题\result\\'+date_1,encoding='gbk')
    return task
task10(a,'task3-2A')
task10(b,'task3-2B')
task10(c,'task3-2C')
task10(d,'task3-2D')
task10(e,'task3-2E')

售货机A结果:

由此可以得出各商品的总销售金额与销售量形成的画像啦。
另外因本人技术问题,任务4得出的预算结果不如预期,因此任务4暂时不展现出来,等本人技术加深后,再更新任务4的博客。

结尾

任务3到这里就完成啦
还请各位大神指点我这小白的代码。

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服