社区首页 >问答首页 >使用一个作为标题的多列中的数据帧中的拆分列表

使用一个作为标题的多列中的数据帧中的拆分列表
EN

Stack Overflow用户
提问于 2022-01-09 10:55:12
回答 2查看 69关注 0票数 1

假设我得到了一个熊猫数据,最后有两个列,其中包含一个列表(长度为>= 1)。第一个列("mode")有一个变量,应该附加到所需的标题名称,第二列("res")包含数据:

代码语言:javascript
代码运行次数:0
复制
>>> df = pd.DataFrame([ 
    { 'c1': 850, 'c2': 'Ex', 'c3': 300.0, 'c4': 250, 'mode': [0, 1], 'res': [1.525, 1.321] },
    { 'c1': 850, 'c2': 'Ex', 'c3': 300.0, 'c4': 250, 'mode': [0, 1], 'res': [1.526, 1.311] }
])

有结果

代码语言:javascript
代码运行次数:0
复制
    c1  c2     c3   c4    mode             res
0  850  Ex  300.0  250  [0, 1]  [1.525, 1.321]
1  850  Ex  300.0  250  [0, 1]  [1.526, 1.311]

是否有更好的方法来拆分dataframe df以获得所需的结果

代码语言:javascript
代码运行次数:0
复制
    c1  c2  c3      c4   res_mode_0  res_mode_1
0  850  Ex  300.0   250       1.525       1.321
1  850  Ex  310.0   250       1.526       1.311

而不是使用循环?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2022-01-09 11:00:36

您可以尝试以下代码。优点是它可以工作,而不考虑列表中元素的数量。

代码语言:javascript
代码运行次数:0
复制
df = pd.DataFrame([ 
    { 'c1': 850, 'c2': 'Ex', 'c3': 300.0, 'c4': 250, 'mode': [0, 1], 'res': [1.525, 1.321] },
    { 'c1': 850, 'c2': 'Ex', 'c3': 300.0, 'c4': 250, 'mode': [0, 1], 'res': [1.526, 1.311] }
])

split_df = pd.DataFrame(df["res"].tolist()).add_prefix("res_mode_")

df = pd.concat([df, split_df], axis=1).drop(["mode", "res"], axis=1)

输出:

代码语言:javascript
代码运行次数:0
复制
df

    c1      c2  c3      c4      res_mode_0  res_mode_1
0   850     Ex  300.0   250     1.525       1.321
1   850     Ex  300.0   250     1.526       1.311
票数 0
EN

Stack Overflow用户

发布于 2022-01-09 11:02:57

最有效的方法;

代码语言:javascript
代码运行次数:0
复制
pd.concat([pd.DataFrame(df.pop('your_column').values.tolist()), df], axis=1)

不幸的是,您必须在需要展开的每个列上使用此方法。

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

https://stackoverflow.com/questions/70644487

复制
相关文章
使用spark对hive表中的多列数据判重
本文处理的场景如下,hive表中的数据,对其中的多列进行判重deduplicate。 1、先解决依赖,spark相关的所有包,pom.xml spark-hive是我们进行hive表spark处理的关键。 <dependencies> <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-core_2.10</artifactId> <ver
用户1225216
2018/03/05
5.2K0
使用VBA删除工作表多列中的重复行
自Excel 2010发布以来,已经具备删除工作表中重复行的功能,如下图1所示,即功能区“数据”选项卡“数据工具——删除重复值”。
fanjy
2022/11/16
11.4K0
使用VBA删除工作表多列中的重复行
如何在 Pandas 中创建一个空的数据帧并向其附加行和列?
Pandas是一个用于数据操作和分析的Python库。它建立在 numpy 库之上,提供数据帧的有效实现。数据帧是一种二维数据结构。在数据帧中,数据以表格形式在行和列中对齐。它类似于电子表格或SQL表或R中的data.frame。最常用的熊猫对象是数据帧。大多数情况下,数据是从其他数据源(如csv,excel,SQL等)导入到pandas数据帧中的。在本教程中,我们将学习如何创建一个空数据帧,以及如何在 Pandas 中向其追加行和列。
很酷的站长
2023/08/11
2800
如何在 Pandas 中创建一个空的数据帧并向其附加行和列?
Silverlight中的帧
Silverlight是基于时间线的,不象Flash是基于帧的,所以在Silverlight中,很少看到有文档专门介绍SL中的帧。 但是我们从动画原理知道,动画只不过是一幅幅静态图片连续播放,利用人眼的视觉暂留形成的,因此任何动画从原理上讲,至少还是有每秒播放多少帧这个概念的。 Silverlight的sdk文档中,有一段话: ... maxFramerate 值可通过 Silverlight 插件对象的 maxframerate 参数进行配置。maxframerate 参数的默认值为 60。current
菩提树下的杨过
2018/01/23
9340
python中列表的使用
情景:列表应该是数据处理时经常使用到一种数据类型,可以有序、组合的操作值存储,是很实用的函数。。。这是最后一篇整理的笔记,发现排版很浪费时间,也得不到交流,还是用类似onenote写笔记的方式快。
py3study
2020/01/14
5.3K0
如何使用Excel将某几列有值的标题显示到新列中
如果我们有好几列有内容,而我们希望在新列中将有内容的列的标题显示出来,那么我们怎么做呢?
繁华是客
2023/03/03
11.3K0
视频中的 I 帧,P 帧,B 帧
视频传输原理 视频是由一幅幅帧图像和一组音频构成的,视频的播放过程可以简单理解为一帧帧的画面按照时间顺序呈现出来的过程。但是在实际应用中,并不是每一帧都是完整的画面,因为如果每一帧画面都是完整的图片,那么一个视频的体积就会很大。这样对于网络传输或者视频数据存储来说成本太高,所以通常会对视频流中的一部分画面进行压缩(编码)处理。 编码器将多张图像进行编码后生产成一段一段的 GOP ( Group of Pictures ) 如下图, 解码器在播放时则是读取一段一段的 GOP 进行解码后读取画面再渲染显示。GO
用户1097444
2022/06/29
3.6K0
视频中的 I 帧,P 帧,B 帧
Power Query如何处理多列拆分后的组合?
对于列的拆分一般使用的比较多,也相对容易,通过菜单栏上的拆分列就能搞定,那如果是多列拆分又希望能一一对应的话需要如何操作呢?如图1所示,这是一份中国香港和中国台湾的电影分级制度,需要把对应的分级制度和说明给对应,那如何进行处理呢?目标效果如图2所示。
逍遥之
2020/05/13
2.5K0
three.js中帧缓存的使用
在网上查阅了一下three.js关于帧缓存的使用,感觉很多都是关于three.js中后处理通道的使用的。后处理通道确实使用FBO实现的,但其实我就是想获取某个时刻的渲染结果作为纹理,没必要在动态渲染中进行后处理。真正实现这个功能的是WebGLRenderTarget这个类,这是一个渲染目标的缓冲区,可以装载到WebGLRenderer中进行渲染,再从WebGLRenderTarget获取纹理对象。
charlee44
2020/06/22
4.2K0
Excel实战技巧110:快速整理一列数据拆分成多列(使用公式)
在《Excel实战技巧109:快速整理一列数据拆分成多列》中,我们使用一种巧妙的思路解决了将一列数据拆分成多列的问题。本文介绍使用公式实现的方法。
fanjy
2021/08/31
4K0
Excel实战技巧110:快速整理一列数据拆分成多列(使用公式)
【Python】基于多列组合删除数据框中的重复值
最近公司在做关联图谱的项目,想挖掘团伙犯罪。在准备关系数据时需要根据两列组合删除数据框中的重复值,两列中元素的顺序可能是相反的。
阿黎逸阳
2020/09/08
14.7K0
MySQL索引中的前缀索引和多列索引
正确地创建和使用索引是实现高性能查询的基础,本文笔者介绍MySQL中的前缀索引和多列索引。
玖柒的小窝
2021/11/06
4.4K0
Power Query中如何把多列数据合并?
解释:第一个List.Range目的是为了固定班级字段;第2个List.Range是为了提取第一组的数据。然后和2个列表进行组合并转成Table格式。
逍遥之
2020/03/23
4.5K0
Power Query中单列数据按需转多列
先上效果图 (一) 确定数据源及变量 1. 确定需求: a) 通过列数参数来改变最终的列数 b) 更改列数标题不影响数据运行 c) 更改数据源标题不影响数据运行 2. 确定变量 a) 列数 b) 列数
逍遥之
2020/03/23
2.6K0
Pandas中求某一列中每个列表的平均值
前几天在Python最强王者交流群【冫马讠成】问了一道Pandas处理的问题,如下图所示。
前端皮皮
2022/08/17
4.9K0
Pandas中求某一列中每个列表的平均值
读取文档数据的各列的每行中
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/117322.html原文链接:https://javaforall.cn
全栈程序员站长
2022/07/06
2K0
Excel实战技巧109:快速整理一列数据拆分成多列
你可以使用多种方法,包括:使用VBA,创建数组公式,编写多个公式,等等。本文将给你展示一种“最懒的”方法,也可能是最快且最容易的方法。
fanjy
2021/08/31
1.7K0
Excel实战技巧109:快速整理一列数据拆分成多列
FFmpeg中的子帧延迟
本文来自IBC 2019(International Broadcasting Convention)中的演讲,主要内容是FFmepg编码的子帧延时。演讲内容来自EBU(European Broadcasting Union)的Kieran Kunhya。
用户1324186
2019/10/27
1.9K0
Python3中列表的使用
列表操作常用操作包含以下方法: 1、list.append(obj):在列表末尾添加新的对象 2、list.count(obj):统计某个元素在列表中出现的次数 3、list.extend(seq):在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表) 4、list.index(obj):从列表中找出某个值第一个匹配项的索引位置 5、list.insert(index, obj):将对象插入列表 6、list.pop(obj=list[-1]):移除列表中的一个元素(默认最后一个元素),并且返回该元素的值 7、list.remove(obj):移除列表中某个值的第一个匹配项 8、list.reverse():反向列表中元素 9、list.sort([func]):对原列表进行排序
py3study
2020/01/03
2.7K0
Mysql中的列类型
支持的范围是1000-01-01 00:00:00 ~ 9999-12-31 23:59:59
Tony He
2022/11/17
6.4K0

相似问题

将数据帧列中的元组列表拆分为数据帧的列

312

使用向量列表作为列索引按列拆分数据帧

322

将一列数据帧拆分为多列的数据帧

11

将列数据帧拆分为多列

25

从数据帧中的多列列表中获取元素

25
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

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

洞察 腾讯核心技术

剖析业界实践案例

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