栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python数据处理小技巧(echarts学习)【一】

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python数据处理小技巧(echarts学习)【一】

一.针对echarts桑基图的数据处理
这是我们想要的数据格式
links[{
    source: '家具',
    target: '公司',
    value: 1879156}]

部分源数据截图 

根据表格数据所致我们需要的数据字段来源于["地区", "类别"]["销售额"]

下面我们利于pandas进行数据处理

import pandas as pd

data = pd.read_excel("超市运营数据.xls")
#对地区、类别分组,根据销售额进行求和
a = data.groupby(["地区", "类别"])["销售额"].sum()

这时我们a中的数据为

 根据需求,下面我们可以通过index和values来获取我们所需要的具体值

#地区
print(a.index[0][0])
#类别
print(a.index[0][1])
#销售额
print(a.values[0])

桑基图links所需要的数据是由一个数组中多个字典组成,我们可以通过字典中的setdefault()方法添加多个键值对。Python 字典 setdefault() 方法 (w3school.com.cn)https://www.w3school.com.cn/python/ref_dictionary_setdefault.asp

dic.setdefault("source", a.index[0][0])
dic.setdefault("target", a.index[0][1])
dic.setdefault("value", a.values[0])
print(dic)

#{'source': '东北', 'target': '办公用品', 'value': 839488.916}

 最后只需要将每个字典加入到列表中,下面是全部代码

import pandas as pd
data = pd.read_excel("超市运营数据.xls")
a = data.groupby(["地区", "类别"])["销售额"].sum()
""" links[{
    source: '家具',
    target: '公司',
    value: 1879156}]
"""
links = []
dic = {}
i = 0
while (i 
二.针对echarts热力图的数据处理 

也是分组聚合操作,数据源还是上面的,代码如下

import pandas as pd

data=pd.read_excel("超市运营数据.xls")

a=data[["城市","利润","子类别"]].groupby("城市")["利润"].sum().reset_index().sort_values(by="利润")

ad=data[["城市","利润","子类别"]]
#最高最低5个城市的利润
bot=a.head(5)
top=a.tail(5)
#数据合并
b=pd.concat((bot,top),axis=0,join="inner")
#过滤掉ad不满足最低最高5个城市的数据
c=ad.loc[ad["城市"].isin(b['城市'].values)]

data2=c.groupby(["子类别","城市"])["利润"].sum().reset_index()

e=data2.values.tolist()
print(data2)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/829032.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号