问题背景:
最近在做硕士毕业大论文的数据处理等工作,其中需要从一个经过降序排列的excel中的topic、value两列找出累加和大于设定阈值的前n项所对应的topic项
表格如下:
输出文件是一个DataFrame类型,有三列数据,分别为[‘author’,‘topic’,‘value’]
现在就要把value列数值累加和大于0.8(设定的阈值)所对应的topic取出来,并且放到一个列表中,供后续数据处理任务使用。
直接上代码:
# 定义一个函数,该函数实现了对数值的降序排列,并且将累加和大于阈值的对应topic项取到的功能
def order_dict(dicts, n):
result = []
result1 = []
result2 = []
r_sum = 0
p = sorted([(k, v) for k, v in dicts.items()], reverse=True) #对字典降序处理
s = set()
for i in p:
s.add(i[1]) #把 p字典中每个键值对的value值拿到
for i in sorted(s, reverse=True)[:]:
for j in p:
if j[1] == i:
result.append(j)
for r in result:
r_sum += r[1]
result1.append(r[0])
result2.append(r[1])
if r_sum > n: #这里把累加和大于阈值的前n项取出来,并且达到该条件就立刻跳出循环
break
return result1,result2
输出函数结果看一下:
print(order_dict(results,0.8))
对应的topic项
对应的value值
[0.245762711864406, 0.144067796610169, 0.144067796610169, 0.0762711864406779, 0.0762711864406779, 0.059322033898305, 0.0423728813559322, 0.0423728813559322]
总结:
主要是对字典key,value的操作处理,注意好每个循环的功能即可
参考文章链接:
一、导入模块1.>>> import easygui>>> easygui.msgbox('Hello')'OK'2.>>> from easygui import *>>> msgbox('嗨,小美女')3.>>> import easygui as g>&
什么是微服务?传统的单体服务架构是单独服务包,共享代码与数据,开发成本较高,可维护性、伸缩性较差,技术转型、跨语言配合相对困难。而微服务架构强调一个服务负责一项业务,服务可以单独部署,独立进行技术选型和开发,服务间松耦合,服务依赖的数据也独立维护管理。虽然微服务存在部署复杂、运维难度较大、分布式事务控制难、容错要求高等缺点,但总体而言,微服务的优点远大于其复杂性。微服务架构需要注意哪些...
10、对象的实例化内存布局与访问定位11、直接内存12、执行引擎13、StringTable
一、判断题1-1下面这段代码,对a采用八进制数值进行赋值,因此打印输出的结果是945。(2分) F#include <stdio.h>int main(){ int a,b; a = 029; b = 920; printf("%d", a+b); return 0;}1-2假设某段C语言程序中定义了两个变量a、b,并且两个变量都不为0,则表达式 a / b的值必不为0。(2分) F1-3下面这段程序,将循环有限次,在打印输出有限行之
在打牢基础上下功夫,多角度构建税收大数据集群;在深化应用上下功夫,多层次挖掘税收大数据价值;在升级拓展上下功夫,多维度推动税收大数据创新中办、国办发布的《深化国税、地税征管体制改革方案》从国家治理高度对税制改革作出部署,对税收事业的改革创新发展具有里程碑意义。树立和践行共治思维,以“信息高度聚合”为切入点,打破影响和制约税收治理体系和治理能力现代化的瓶...
一、添加依赖<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.4.3.1</version></dependency><dependency>
adb server version (31) doesn’t match this client (41); killing…could not read ok from ADB Serverfailed to start daemonadb.exe: failed to check server version: cannot connect to daemon查资料发现:这个是so...
介绍了WLAN的基本概念以及WLAN的工作原理。文章最后附上了自己整理的思维导图。
转载自 https://juejin.im/post/6844903993152372749
文章目录类加载器类加载过程默认类加载器启动(Bootstrap)类加载器扩展(Extension)类加载器系统(System)类加载器类加载器树图简单代码类加载器的委托机制类的加载委托机制原理ClassLoader示例类与类加载器自定义类加载器自定义方法示例Tomcat 的类加载器(Tomcat8.5)使用类加载获取资源文件参考类加载器类加载过程加载:类加载过程的一个阶段。通过一个类的完全...
{% for x in range(1,10) %}{% for y in range(1,x + 1) %}{{ y }} * {{ x }} = {{ y * x }}{% endfor %}{% endfor %}{% for x in range(1,10) %}{% for y in range(1,10) if y <= x %}{{ y }} * {{ x }} = {{ y ...
关于人脸检测和识别,应用的范围是非常广的,其实之前的《NDK开发前奏 - 实现支付宝人脸识别功能》 也有提到,只是那时并未具体的去分析算法和实现原理,这里笔者打算一步一步来分析和实现人脸识别,首先我们得要明确人脸检测和人脸识别是两个不同的概念,人脸检测是检测有人脸,人脸识别是匹配你是你,他们所采用的算法也是不一样的,这篇文章是基于人脸检测来实现人脸识别。我们先来看下已经实现了的人脸检测效果:人...