首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >字典中值之间的百分比差异

字典中值之间的百分比差异
EN

Stack Overflow用户
提问于 2019-09-17 16:01:52
回答 4查看 222关注 0票数 2

我有一本字典,如下

代码语言:javascript
运行
AI代码解释
复制
dictSumEachDay = {'2019.09.17': (558, 558),
                  '2019.09.09': (541, 552),
                  '2019.09.07': (415, 415),
                  '2019.09.11': (817, 817),
                  '2019.09.10': (755, 751),
                  '2019.09.12': (803, 771),
                  '2019.09.14': (679, 712),
                  '2019.09.06': (660, 654),
                  '2019.09.13': (737, 733),
                  '2019.09.15': (837, 837),
                  '2019.09.16': (715, 715),
                  '2019.09.08': (489, 492)}

我想计算值之间的百分比差异,并返回一个字典,例如

代码语言:javascript
运行
AI代码解释
复制
 dictPercentDiff = {'2019.09.17': 0.0,
                  '2019.09.09': 2.012808783165599,
                  '2019.09.07': 0.0,
                  '2019.09.11': 0.0,
                  '2019.09.10': 0.5312084993359893,
                  '2019.09.12': 4.066073697585769,
                  '2019.09.14': 4.744787922358016,
                  '2019.09.06': 0.91324200913242,
                  '2019.09.13': 0.5442176870748299,
                  '2019.09.15': 0.0,
                  '2019.09.16': 0.0,
                  '2019.09.08': 0.6116207951070336}

已经尝试过了

代码语言:javascript
运行
AI代码解释
复制
dictPercentDiff = {}

for key, value in dictSumEachDay.items():
    top = abs(value[0] - value[1])
    bottom = (value[0] + value[1])/2
    dictPercentDiff[dictSumEachDay[key]] = (top/bottom)*100

它返回:

代码语言:javascript
运行
AI代码解释
复制
{(558, 558): 0.0,
 (541, 552): 2.012808783165599,
 (415, 415): 0.0,
 (817, 817): 0.0,
 (755, 751): 0.5312084993359893,
 (803, 771): 4.066073697585769,
 (679, 712): 4.744787922358016,
 (660, 654): 0.91324200913242,
 (737, 733): 0.5442176870748299,
 (837, 837): 0.0,
 (715, 715): 0.0,
 (489, 492): 0.6116207951070336}

显然,我混淆了键和值,但我似乎不能让它工作。

EN

回答 4

Stack Overflow用户

发布于 2019-09-17 16:06:15

假设您想要按天键入% difference,您需要做的就是更正最终的dict赋值:

代码语言:javascript
运行
AI代码解释
复制
dictPercentDiff[key] = (top/bottom)*100

您发布的代码非常明确地使用值的元组作为新字典的键。

票数 1
EN

Stack Overflow用户

发布于 2019-09-17 16:08:24

代码语言:javascript
运行
AI代码解释
复制
{key:(value[1]-value[0])/value[0] * 100 for key,value in dictSumEachDay.items()}
票数 1
EN

Stack Overflow用户

发布于 2019-09-17 16:36:55

问题出在dictPercentDiff[dictSumEachDay[key]]上。您告诉它您想要获取键(date),在dictSumEachDay (元组)中找到与之关联的值,然后将其用作键。如果您只需将其更改为dictPercentDiff[key],就会得到您想要的结果。此外,使用“分子”和“分母”而不是“顶部”和“底部”更清晰。然而,最好使用一种理解:

代码语言:javascript
运行
AI代码解释
复制
dictPercentDiff = {key: 200*abs(value[1]-value[0])/(value[0]+value[1]) for key, value in dictSumEachDay.items()}

作为进一步的说明,人们通常使用“百分比差异”来表示有符号的差异作为第一个值的百分比,而您使用它来表示差异的绝对值作为平均值的百分比。也就是说,您使用的是100*abs(value[1]-value[0])/((value[0]+value[1])/2)而不是100*(value[1]-value[0])/(value[0])

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57978064

复制
相关文章
Dive into Delta Lake | Delta Lake 尝鲜
Delta Lake 是一个存储层,为 Apache Spark 和大数据 workloads 提供 ACID 事务能力,其通过写和快照隔离之间的乐观并发控制(optimistic concurrency control),在写入数据期间提供一致性的读取,从而为构建在 HDFS 和云存储上的数据湖(data lakes)带来可靠性。Delta Lake 还提供内置数据版本控制,以便轻松回滚。
王知无-import_bigdata
2020/11/06
1.2K0
Dive into Delta Lake | Delta Lake 尝鲜
从基因层面解释,为什么Delta如此危险?
众所周知,南京正处于防疫的严峻时刻,截至8月3日,已有确诊病例200余例,与此同时,全国已有15个省33个市发现新一轮疫情。而这一轮疫情,源于新冠最新变种德尔塔(Delta)。
镁客网
2021/08/06
3470
Html获取Url参数
做web前端的开发很多的时候都会遇到的一个很简答的问题,就是两个页面之间的跳转,一般来说是:
何处锦绣不灰堆
2020/05/29
10K0
Html获取Url参数
从mysql获取到从redis获取 示例
1.因采集是每分钟写入一次数据库,故redis每分钟读取一次数据库最新信息,读取脚本如下:
葫芦
2019/04/13
2.4K0
从mysql获取到从redis获取 示例
[LakeHouse] Delta Lake全部开源,聊聊Delta的实现架构
刚刚结束的Data + AI summit上,Databricks宣布将Delta Lake全部开源。
Tim在路上
2022/09/01
1.2K0
[LakeHouse] Delta Lake全部开源,聊聊Delta的实现架构
Delta实践 | Delta Lake在Soul的应用实践
(一)业务场景 传统离线数仓模式下,日志入库前首要阶段便是ETL,Soul的埋点日志数据量庞大且需动态分区入库,在按day分区的基础上,每天的动态分区1200+,分区数据量大小不均,数万条到数十亿条不等。下图为我们之前的ETL过程,埋点日志输入Kafka,由Flume采集到HDFS,再经由天级Spark ETL任务,落表入Hive。任务凌晨开始运行,数据处理阶段约1h,Load阶段1h+,整体执行时间为2-3h。
大数据技术架构
2021/03/05
1.5K0
Delta实践 | Delta Lake在Soul的应用实践
How delta works
Most existing big data storages based on HDFS are lack of feature upsert(if exists then update otherwise add). This means you may suffer from many situations:
用户2936994
2019/08/05
7150
How delta works
java 获取_java中的html如何获取
UUID,通用唯一识别码,是由一组32位数的16进制数字所构成,可以产生一个号称全球唯一的ID,可以用来命名文件、变量以及数据库的ID主键等属于唯一的元素。
全栈程序员站长
2022/09/22
7.6K0
java 获取_java中的html如何获取
数据获取:认识HTML代码
一个网页通常是由HTML元素、CSS样式和JavaScript脚本组成,但是对于数据采集来说,有用的只有HTML元素。通俗一点讲,网页就是一个房子,html就是简单的毛坯,CSS就是给房子来个精装修,Js脚本就是给房子通上了水电。要是把房子的精装修拆除,房子也可以用,就是有点难看,网页也是一样,把CSS样式拿走,内容还在,但是就不太美观。一个网页的大体结构如下:
马拉松程序员
2023/09/02
1710
数据获取:认识HTML代码
获取HTML冻结窗口元素
在写爬虫时会获取页面的元素去定位,但是有些页面元素只在鼠标悬停时才会出现,鼠标离开后就会消失,这种情况很不利于去查看想要获取的元素。
sugarbeet
2022/10/04
2.8K0
认识 Delta Lake
17,18是计算引擎火热的两年,19年已然是红海了。计算引擎中的王者是Spark,综合指标最好,生态也好,当其他引擎还在ETL,交互查询,流上厮杀时,Spark已经在AI领域越走越远。
用户2936994
2022/04/25
7370
从记录获取
Record.FieldCount(record as record) as number
逍遥之
2020/03/23
1.2K0
Python新手写出漂亮的爬虫代码1——从html获取信息
初到大数据学习圈子的同学可能对爬虫都有所耳闻,会觉得是一个高大上的东西,仿佛九阳神功和乾坤大挪移一样,和别人说“老子会爬虫”,就感觉特别有逼格,但是又不知从何入手,这里,博主给大家纠正一个误区:爬虫并不神秘,也不高级,是一个非常好上手和掌握的东西(当然,里面也有很多坑,也有很多细节,展开说的话其实也蛮复杂的,不过它的模式和套路就摆在那里,看了小编的博客,保证你能爬下你想要的内容)。
全栈程序员站长
2022/08/15
1.6K0
Python新手写出漂亮的爬虫代码1——从html获取信息
Databricks Delta Lake 介绍
Delta Lake 时间旅行允许您查询 Delta Lake 表的旧快照。时间旅行有很多用例,包括:
codingforfun
2019/05/15
2.5K0
WPF利用WebBrowser获取HTML元素
获取博客园首页左上角的那段文字“代码改变世界”! <Window x:Class="WpfWebBrose.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="MainWindow" Height="768" Width="1024"
MJ.Zhou
2022/05/07
1.6K0
WPF利用WebBrowser获取HTML元素
python 从mysql获取变为redis获取
1.因采集是每分钟写入一次数据库,故redis每分钟读取一次数据库最新信息,读取脚本如下:
葫芦
2019/04/17
3.3K0
python 从mysql获取变为redis获取
Delta 实现Partial Merge
所谓Partial Merge 是指,假设我们有a,b,c,d 四个字段,现在来了一千条记录,每条记录只会包含这四个字段的一个或者多个,并且,每条记录包含的字段都不一样。
用户2936994
2022/07/21
3910
巧用正则获取html页面信息
工作中需要获取html网页的部分信息,而通过掌握html网页结构来获取某元素的信息是有一定难度的,只能另辟蹊径来解决。
披头
2022/08/22
2K0
巧用正则获取html页面信息
点击加载更多

相似问题

从Delta获取HTML

325

从组的Delta查询中获取成员

211

闪亮显示HTML实体,如&Delta;

117

从time_delta列python获取总秒数

14

如何获取和设置delta值?

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文