首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何从现有的数据帧创建新的数据帧

如何从现有的数据帧创建新的数据帧
EN

Stack Overflow用户
提问于 2020-11-02 22:32:48
回答 1查看 53关注 0票数 1

我的数据就是这样的

代码语言:javascript
运行
AI代码解释
复制
T1    YEAR   JAN  FEB    MAR   APRL   DEC    G1
ABC   2015   0    18.6   0.9    6.9    3.0   DATA
ABC   2016   8.9   0      0      3.9    0    TECH
DEF   2020    0    9.0    0      8.06    6    TECH
GHI   2017    0    1.1   9.8      6.8     0    OPT
JKL   2018   7.1   2.1    0       0       8    DATA
JKL   2020    5     2     6        6      5     OTHER

我所做的是:

代码语言:javascript
运行
AI代码解释
复制
df = df.groupby(['T1','YEAR','G1'])['JAN','FEB','MAR','APRL','DEC'].SUM()

我得到的输出是:

代码语言:javascript
运行
AI代码解释
复制
                      JAN    FEB      MAR    APRL   DEC  
T1     G1    YEAR 
----------------------------------------------------------
ABC  DATA    2015      25.9   55.8     5.9     7.9   66
              2016      2      0.9      0      8.0   66
              2017      0      88       1.09    66    0
              2018      55      77      7.1      6.0  1.9
              2019      7.9     5.0      6.9     98    6.0
              2020       7     55.0       77      98   7.8
ABC   TECH    (2015-2020)....

现在,我需要以下格式的输出:

代码语言:javascript
运行
AI代码解释
复制
T1    G1     VALUES      TIME
---------------------------------
ABC    DATA   25.9        2015-01-01 00:00:00
ABC    DATA    55.8        2015-02-01 00:00:00
ABC     DATA    5.9        2015-03-01 00:00:00
ABC      DATA   7.9         2015-04-01 00:00:00

我从我那端开始尝试的是:

代码语言:javascript
运行
AI代码解释
复制
 for i , j in df.iterrows():
    for n in range (0,276)          (here I want to know how can I put my whole iterating value under one
       value =df.iloc[n,:]             column name 'Value')
        print(value)    

另外,我如何访问T1,G1,YEAR的groupby值,我尝试这样做:

代码语言:javascript
运行
AI代码解释
复制
GRP = pd.DataFrame(df.groupby(['T1','G1','YEAR']))

在这里,我尝试创建一个具有列T1、G1、YEAR的新DataFrame,然后将该值列添加到数据帧中

谁能告诉我如何解决这个问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-11-02 22:42:44

您可以对数据帧执行melt操作,然后创建新的datetime列。然后保留/重新排序必要的列,并对值进行排序:

代码语言:javascript
运行
AI代码解释
复制
df = df.groupby(['T1','YEAR','G1'])[['JAN','FEB','MAR','APRL','DEC']].sum().reset_index().rename({'APRL' : 'APR'}, axis=1)
df = df.melt(id_vars=['T1', 'YEAR','G1'], var_name='TIME', value_name='VALUES')
df['TIME'] = pd.to_datetime(df['TIME'] + '-' + df['YEAR'].astype(str))
df = df[['T1', 'G1', 'VALUES', 'TIME']].sort_values(['T1', 'G1','TIME'])
df
Out[1]: 
     T1     G1  VALUES       TIME
0   ABC   DATA    0.00 2015-01-01
6   ABC   DATA   18.60 2015-02-01
12  ABC   DATA    0.90 2015-03-01
18  ABC   DATA    6.90 2015-04-01
24  ABC   DATA    3.00 2015-12-01
1   ABC   TECH    8.90 2016-01-01
7   ABC   TECH    0.00 2016-02-01
13  ABC   TECH    0.00 2016-03-01
19  ABC   TECH    3.90 2016-04-01
25  ABC   TECH    0.00 2016-12-01
2   DEF   TECH    0.00 2020-01-01
8   DEF   TECH    9.00 2020-02-01
14  DEF   TECH    0.00 2020-03-01
20  DEF   TECH    8.06 2020-04-01
26  DEF   TECH    6.00 2020-12-01
3   GHI    OPT    0.00 2017-01-01
9   GHI    OPT    1.10 2017-02-01
15  GHI    OPT    9.80 2017-03-01
21  GHI    OPT    6.80 2017-04-01
27  GHI    OPT    0.00 2017-12-01
4   JKL   DATA    7.10 2018-01-01
10  JKL   DATA    2.10 2018-02-01
16  JKL   DATA    0.00 2018-03-01
22  JKL   DATA    0.00 2018-04-01
28  JKL   DATA    8.00 2018-12-01
5   JKL  OTHER    5.00 2020-01-01
11  JKL  OTHER    2.00 2020-02-01
17  JKL  OTHER    6.00 2020-03-01
23  JKL  OTHER    6.00 2020-04-01
29  JKL  OTHER    5.00 2020-12-01
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64654251

复制
相关文章
CAN通信的数据帧和远程帧「建议收藏」
(先来一波操作,再放概念) 远程帧和数据帧非常相似,不同之处在于: (1)RTR位,数据帧为0,远程帧为1; (2)远程帧由6个场组成:帧起始,仲裁场,控制场,CRC场,应答场,帧结束,比数据帧少了数据场。 (3)远程帧发送特定的CAN ID,然后对应的ID的CAN节点收到远程帧之后,自动返回一个数据帧。
全栈程序员站长
2022/07/23
6.7K0
CAN通信的数据帧和远程帧「建议收藏」
详解CAN总线:标准数据帧和扩展数据帧
CAN协议可以接收和发送11位标准数据帧和29位扩展数据帧,CAN标准数据帧和扩展数据帧只是帧ID长度不同,以便可以扩展更多CAN节点。
不脱发的程序猿
2022/10/04
10.5K0
详解CAN总线:标准数据帧和扩展数据帧
数据帧的学习整理
事先声明,本文档所有内容均在本人的学习和理解上整理,不具有权威性,甚至不具有准确性,本人也会在以后的学习中对不合理之处进行修改。
全栈程序员站长
2022/09/20
2.9K0
数据帧的学习整理
[视频编码] 视频编码的三种帧:I帧,B帧,P帧
在视频压缩编码中,所有的帧被分成了三个种类,I帧,B帧和P帧,其实就是Intra-Prediction帧,Bi-prediction帧和Prediction帧。顾名思义,就是帧内预测帧,双向预测帧以及(单向)预测帧。
轻舞飞扬SR
2021/02/24
2.3K0
视频中的 I 帧,P 帧,B 帧
视频传输原理 视频是由一幅幅帧图像和一组音频构成的,视频的播放过程可以简单理解为一帧帧的画面按照时间顺序呈现出来的过程。但是在实际应用中,并不是每一帧都是完整的画面,因为如果每一帧画面都是完整的图片,那么一个视频的体积就会很大。这样对于网络传输或者视频数据存储来说成本太高,所以通常会对视频流中的一部分画面进行压缩(编码)处理。 编码器将多张图像进行编码后生产成一段一段的 GOP ( Group of Pictures ) 如下图, 解码器在播放时则是读取一段一段的 GOP 进行解码后读取画面再渲染显示。GO
用户1097444
2022/06/29
3.7K0
视频中的 I 帧,P 帧,B 帧
函数栈帧的创建和销毁
函数栈帧( stack frame )就是函数调用过程中在程序的调用栈( call stack )所开辟的空间,这些空间是用来存放:
xxxflower
2023/04/16
8900
函数栈帧的创建和销毁
[C语言]函数栈帧的创建和销毁
返回值并不会随着函数作用域的销毁而销毁,而是放在eax中准备返回,当通过pop出栈回到main函数中再将返回值放到局部变量中。
IT编程爱好者
2023/04/12
5610
[C语言]函数栈帧的创建和销毁
函数栈帧的创建与销毁
最近在学习C语言的过程中遇到了一些问题,在询问老师和查询相关资料的基础上了解到了函数栈帧的相关概念,对下列问题也有了答案。
摘星
2023/04/28
5460
函数栈帧的创建与销毁
CAN总线学习笔记(2)- CAN协议数据帧与遥控帧
依照瑞萨公司的《CAN入门书》的组织思路来学习CAN通信的相关知识,并结合网上相关资料以及学习过程中的领悟整理成笔记。好记性不如烂笔头,加油!
全栈程序员站长
2022/09/14
2.7K0
CAN总线学习笔记(2)- CAN协议数据帧与遥控帧
函数栈帧的创建和销毁
        ①函数参数和函数返回值    ②临时变量(包括函数的非静态的局部变量以及编译器自动生产的其他临时变量)   ③保持上下文信息(包括在函数调用前后需要保持不变的寄存器)
二肥是只大懒蓝猫
2023/03/28
7890
函数栈帧的创建和销毁
创建和使用逐帧动画
AnimationDrawable可以用来创建一个新类是由一个表示Drawable资源-frame动画,可以使用XML。在的应用res/drawable讲动画目录Drawable资源定义为外部资源。
全栈程序员站长
2022/07/05
3710
JAVA腾晖数据帧对接指南
十六进制(简写为hex或下标16)在数学中是一种逢16进1的进位制。一般用数字0到9和字母A到F表示,其中:A~F相当于十进制的10~15,这些称作十六进制数字。
gang_luo
2020/08/13
3.9K1
JAVA腾晖数据帧对接指南
音频帧、视频帧及其同步
音频帧的概念没有视频帧那么清晰,几乎所有视频编码格式都可以简单的认为一帧就是编码后的一副图像,而音频帧会因编码格式的不同而不同,如 PCM 音频流可以直接进行播放,下面以 MPEG 音频帧格式为例介绍音频帧。
刘盼
2021/02/08
4.2K0
IP协议的数据帧长度是多少
1、如果使用PPP协议,帧最大长度1510字节,其中数据长度(加载上层的协议数据)不超过1500字节; 2、如果在以太网中,帧的长度为:64~1518字节(10~100Mbps 的以太网),1G及以上的以太网,帧长度为512~1518字节;其中数据长度(加载上层的协议数据)不超过1500字节。
葆宁
2019/04/18
3.7K0
Easy Tech:什么是I帧、P帧和B帧?
I帧、P帧和B帧(I-frames、P-frames and B-frames)的概念是视频压缩领域的基础。这三种帧类型在特定情况下用于提高编解码器的压缩效率、压缩流的视频质量,以及使得流去应对传输和存储时候的错误和故障。
LiveVideoStack
2021/09/23
3.5K0
Easy Tech:什么是I帧、P帧和B帧?
[TCP/IP] 数据链路层-ethereal 抓包分析数据帧
1.下载 http://dx1.pc0359.cn/soft/e/ethereal.rar
唯一Chat
2019/09/10
1.7K0
[TCP/IP] 数据链路层-ethereal 抓包分析数据帧
MMFlow :帧与帧之间的追光者
光流(Optical Flow),字面理解为“光的流动”,更准确的说法为:时变图像上的二维运动场,是视频数据的重要视觉线索,在动作识别、视频理解、视频分割、目标跟踪以及全景拼接等领域,都有广泛应用。
OpenMMLab 官方账号
2022/01/18
1.3K0
MMFlow :帧与帧之间的追光者
[android] 帧布局
/*******************2016年5月3日 更新**************************************/
唯一Chat
2019/09/10
7010
帧头
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
sofu456
2019/12/10
9190
点击加载更多

相似问题

如何从已有的数据帧创建新的数据帧?

124

从现有的数据帧列表中创建新的数据帧列表

11

如何从旧的数据帧创建新的数据帧?

26

Python :从现有的pandas数据帧创建数据帧

22

如何使用现有的两个数据帧创建新的数据帧?

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

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

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文