美文网首页
【matplotlib】【notebook】淘宝评论数据指标——

【matplotlib】【notebook】淘宝评论数据指标——

作者: 自由而灿烂的神 | 来源:发表于2021-01-06 09:30 被阅读0次

    工具:jupyter notebook

    目标:统计颜色分类该属性每一种类型的销售数量占比。

    如下图,该图是源数据,颜色分类即auctionSku列的数据内容。

    实验步骤:

    导入包:

    import pandas as pd

    import re

    import numpy as np

    from mpl_toolkits.mplot3d import Axes3D

    import matplotlib.pyplot as plt

    from pylab import *

    from datetime import date,datetime

    读取数据:

    df=pd.read_excel('perfectdiary_data.xlsx',index_col=None)

    print(len(df['auctionSku']))

    df['auctionSku'].values

    print(type(df['auctionSku'].values))

    清洗数据:

    content = ' ' 

    c_list = []

    for i in df['auctionSku'].values:

        content += i # 拼接成字符串

    # 替换每一项字符串内容不需要的字词、符号;注意 :replace('颜色分类:',' 这里有空格'),空格为标记,方便后面分割字符串

        data = content.replace('颜色分类:',' ').replace('[New]','').replace('【预售】','').replace('.','').replace('预售','').replace('-','')

        c_list=data.split(' ') #以空格分割字符串,返回的数据类型为列表

    print(c_list)

    结果如下图:

    统计每个字段出现的频数:

    result_dic={}

    for item_str in c_list[1:]: #c_list[1:]表示从索引1(即第二个值)开始取到。因为前面用空格分割字符串,所以索引0取到的值为空

        if item_str not in result_dic:

            result_dic[item_str]=1

        else:

            result_dic[item_str]+=1

    result_dic

    结果如图:

    列表a和b中的值进行基本的数学计算,算出每种相同的数据类型在总的类型数量中所占的比例;统计Excel中表格中相同的对象数据,同时把它存入a、b。

    a=[]

    b=[]

    for key in result_dic:

        a.append(key)        

        b.append(result_dic[key])

    绘制图形:

    plt.rcParams['font.sans-serif']=['SimHei']#正常显示中文标签

    size=[]

    t=sum(b)#统计总的发表篇幅

    label=a

    #算出每种相同的数据类型在总的类型数量中所占的比例

    for u in b:

        i=u/t

        size.append(i)

        plt.plot(size)

    plt.title('颜色分类属性饼状图')

    plt.pie(size,labels=label,colors="rgb",autopct='%1.lf%%',shadow=False,startangle=90)

    plt.show()

    结果如图:

    完结,撒花

    相关文章

      网友评论

          本文标题:【matplotlib】【notebook】淘宝评论数据指标——

          本文链接:https://www.haomeiwen.com/subject/pcfnoktx.html