【原创】展开二层嵌套列表(或pd.Series)的几种方法效率对比
import numpy as np
import pandas as pd
import time sr = pd.Series([list('sdkajksdfdsaf') for _ in range(20000)])
sr.head(5) >>>
0 [s, d, k, a, j, k, s, d, f, d, s, a, f]
1 [s, d, k, a, j, k, s, d, f, d, s, a, f]
2 [s, d, k, a, j, k, s, d, f, d, s, a, f]
3 [s, d, k, a, j, k, s, d, f, d, s, a, f]
4 [s, d, k, a, j, k, s, d, f, d, s, a, f]
dtype: object
start = time.time()
li1 = [i for k in sr for i in k]
time1 = time.time()
print('用生成式方法需要时间:', time1 - start) li2 = np.sum(sr)
time2 = time.time()
print('用np.sum方法需要时间:', time2 - time1) li3 = sum(sr, [])
time3 = time.time()
print('用sum方法需要时间:', time3 - time2) >>>
用生成式方法需要时间: 0.009999990463256836
用np.sum方法需要时间: 8.989910125732422
用sum方法需要时间: 8.979910373687744
【原创】展开二层嵌套列表(或pd.Series)的几种方法效率对比的更多相关文章
- 【原创】从 列表的重复 到 用sum展开二层嵌套列表将子元素合并
转载请注明出处:https://www.cnblogs.com/oceanicstar/p/9517159.html ★像R语言里头有rep函数可以让向量的值重复,在python里面可以直 ...
- Highcharts中更新series的5种方法
用Highcharts画图时,经常需要更新所画的图表,最常见的就是改变数据以更新图表.在Highcarts中,数据对应的参数是series.这儿就以图1的柱状图为例,列举如何更新series的5种方法 ...
- JMeter接口测试-提取动态列表最后一个值的两种方法
前言 在用JMeter做接口测试时,我们经常会遇到,一个接口返回一个json串,在这个json串中,某个节点的值是一个列表,而且这个列表的长度是动态变化的.今天我们来学习两种提取动态列表最后一个值的两 ...
- python列表删除重复元素的三种方法
给定一个列表,要求删除列表中重复元素. listA = ['python','语','言','是','一','门','动','态','语','言'] 方法1,对列表调用排序,从末尾依次比较相邻两个元素 ...
- PyQt(Python+Qt)学习随笔:model/view架构中支持QListView列表中展示图标的两种方法
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 在QListView列表视图中的项不但可以展示文字,也可以展示图标和复选框,同时可以指定项是否可以拖 ...
- 使用 RxJava 进行嵌套串行网络请求的一种方法
需求 有这样一个列表数据,它包含了商店+订单的信息,获取订单列表时,订单实体中会包含商店的 ID,而列表显示时需要商店的名称和 logo,这时候就需要进行嵌套串行网络请求了. 关键词 flatMap ...
- python-----删除列表中某个元素的3种方法
python中关于删除list中的某个元素,一般有三种方法:remove.pop.del: 1.remove: 删除单个元素,删除首个符合条件的元素,按值删除举例说明: >>> st ...
- python关于列表转为字典的两个小方法
1.现在有两个列表,list1 = ['key1','key2','key3']和list2 = ['1','2','3'],把他们转为这样的字典:{'key1':'1','key2':'2','ke ...
- python 列表转为字典的两个小方法
1.现在有两个列表,list1 = ['key1','key2','key3']和list2 = ['1','2','3'],把他们转为这样的字典:{'key1':'1','key2':'2','ke ...
随机推荐
- 采用C/C++语言如何实现复数抽象数据类型Complex
记录一下! 采用C/C++语言如何实现复数抽象数据类型Complex #include <stdio.h> typedef struct Complex { double e1; // 实 ...
- iOS内存泄露统计
1.Value stored to 'xxx' during its initialization is never read // 对象声明之后根本就没有使用 只有赋值 2.Value stored ...
- Git 基本知识与常用指令
一.Git代码状态转换图 其中: 未被Git跟踪的状态为unstage状态: 已被Git跟踪的状态为stage状态(stage:阶段),因此包括staging状态和staged状态. untrack ...
- 使用CKRule实现PVC配方计算
1,PVC计算的基本原理 配方员设计好配方,再进行抽象提炼,会出现相对于软件而言可以理解的逻辑,如属性的概念,对厂企生成的PVC产品而言,一般都有产品大类名称,花纹,颜色,长度,宽度,厚度等概念,这对 ...
- WinBatch基础命令
1.echo --> echo[{on|off}][message] Simple -->: @echooff echo hello world 2.@ -->@echo off 3 ...
- Jcrontab定时任务
两篇博客: http://blog.csdn.net/jijijiujiu123/article/details/9086847 网站同事写的(chenrui) ...
- SqlServer50条常用查询语句
Student(S#,Sname,Sage,Ssex) 学生表 Course(C#,Cname,T#) 课程表 SC(S#,C#,score) 成绩表 Teacher(T#,Tname) 教师表 问题 ...
- (一)svn介绍
项目管理中的版本控制问题 通常软件开发由多人协作开发,如果对代码文件.文档等没有进行版本控制,将会出现很多问题: 备份多个版本,占用磁盘空间大 解决代码冲突困难 容易引发BUG 难于恢复至以前正确版本 ...
- how reset smartphone data.
question:how reset meizu smartphone solution one:hard step 1. power off your MEIZU smartphone. ste ...
- 使用 webpack 各种插件提升你的开发效率
前沿 项目地址 vue-admin 欢迎 star 近几个月,接手了一个老项目的重构规划,有多老呢?就是前端青铜时代的项目,一个前后端都在同一个锅里的项目.完全没有使用任何的打包工具. 后台 php ...