• 示例python 批量操作excel统计销售榜品牌及销售额


    示例统计销售榜品牌及销售额

    import pandas as pd
    import numpy as np
    import os
    
    os.chdir('F:\50mat源数据1000张表格')
    
    name = '户外服装&滑雪衣.xlsx'
    df = pd.read_excel(name)
    df.head()

    打印结果

        日期	转化率	访客数	三级类目	客单价	品牌
    0	2019-08	0.036466	837	滑雪衣	3887.646034	品牌-5
    1	2019-08	0.006110	9951	滑雪衣	1890.920192	品牌-7
    2	2019-08	0.008279	11067	滑雪衣	1001.541028	品牌-19
    3	2019-08	0.003647	25296	滑雪衣	986.192182	品牌-17
    4	2019-08	0.006012	5053	滑雪衣	2818.957816	品牌-14
    

     

    df['日期'].unique()

    打印结果

    array(['2019-08', '2019-07', '2019-06', '2019-05', '2019-04', '2019-03',
           '2019-02', '2019-01', '2018-12', '2018-11', '2018-10', '2018-09'],
          dtype=object)
    
    

     

    一:操作单表

    销售额

    df['销售额'] = df['访客数'] * df['转化率'] * df['客单价']
    
    df.head()

    打印结果

    
        日期	转化率	访客数	三级类目	客单价	品牌	销售额
    0	2019-08	0.036466	837	滑雪衣	3887.646034	品牌-5	118657.898127
    1	2019-08	0.006110	9951	滑雪衣	1890.920192	品牌-7	114977.898920
    2	2019-08	0.008279	11067	滑雪衣	1001.541028	品牌-19	91761.540049
    3	2019-08	0.003647	25296	滑雪衣	986.192182	品牌-17	90969.935091
    4	2019-08	0.006012	5053	滑雪衣	2818.957816	品牌-14	85634.834594
    

     

     

    二:汇总销售额

    # 汇总销售额
    
    df_sum = df.groupby('品牌')['销售额'].sum().reset_index()
    
    df_sum.head()

    打印结果

        品牌	销售额
    0	品牌-1	5.479539e+06
    1	品牌-10	2.913271e+06
    2	品牌-11	2.298716e+06
    3	品牌-12	2.821199e+06
    4	品牌-13	3.256508e+06
    
    

    添加行业标签

    # 添加行业标签
    df_sum['行业'] = name.replace('.xlsx','')
    
    df_sum.head()

    打印结果

        品牌	销售额	行业
    0	品牌-1	5.479539e+06	户外服装&滑雪衣
    1	品牌-10	2.913271e+06	户外服装&滑雪衣
    2	品牌-11	2.298716e+06	户外服装&滑雪衣
    3	品牌-12	2.821199e+06	户外服装&滑雪衣
    4	品牌-13	3.256508e+06	户外服装&滑雪衣
    

     

    三:操作所有表格

    import time
    
    start = time.time()
    
    result = pd.DataFrame()
    
    for name in os.listdir():
        df = pd.read_excel(name)
        df['销售额'] = df['访客数'] * df['转化率'] * df['客单价']
        df_sum = df.groupby('品牌')['销售额'].sum().reset_index()
        df_sum['行业标签'] = name.replace('.xlsx','')
    
        result = pd.concat([result,df_sum])
        
    final = result.groupby('品牌')['销售额'].sum().reset_index().sort_values('销售额', ascending = False)
    
    end = time.time()
    
    print('操作用时:{}s'.format(end-start))

    操作用时:6.295360088348389s

    # 将科学计算法,改为两位小数
    pd.set_option('display.float_format', lambda x :'%.2f' % x)
    
    print(final.head())
    final.describe()

    打印结果

         品牌           销售额
    15   品牌-5 1226223640.73
    8   品牌-17 1195280571.60
    2   品牌-11 1151829215.73
    4   品牌-13 1150687029.66
    3   品牌-12 1143519788.23
    
        销售额
    count	20.00
    mean	1084854125.76
    std	63774592.90
    min	979272391.61
    25%	1050719265.66
    50%	1071804742.94
    75%	1118990465.22
    max	1226223640.73
    
    

    七:数据分析模型

    # 表格处理示例:销售榜品牌及销售额
    
    
    import pandas as pd
    import numpy as np
    import os
    import time
    os.chdir('F:\50mat源数据1000张表格')
    
    name = '户外服装&滑雪衣.xlsx'
    df = pd.read_excel(name)
    
    result = pd.DataFrame()
    
    for name in os.listdir():
        df = pd.read_excel(name)
        df['销售额'] = df['访客数'] * df['转化率'] * df['客单价']
        df_sum = df.groupby('品牌')['销售额'].sum().reset_index()
        df_sum['行业标签'] = name.replace('.xlsx','')
    
        result = pd.concat([result,df_sum])
        
    final = result.groupby('品牌')['销售额'].sum().reset_index().sort_values('销售额', ascending = False)
    
    # 将科学计算法,改为两位小数
    pd.set_option('display.float_format', lambda x :'%.2f' % x)
    
    print(final.head(10))

    加油:一只阿木木

  • 相关阅读:
    codespell
    IDEA打开就闪退或关闭详细解决办法
    git log 空格 翻页
    Vue+ElementUI 分页器elpagination的使用方法
    Vue中computed用法 computed比较适合对多个变量或者对象进行处理后返回一个结果值 计算属性
    word如何删除文本中多余的空行
    Notepad++删除空白行
    Vue生命周期详解
    elementui 自定义树形控件特定行里字体的颜色 content[i].style.color = '#ffff'
    git学习
  • 原文地址:https://www.cnblogs.com/yizhiamumu/p/12410337.html
Copyright © 2020-2023  润新知