楼主: casey_c
4240 1

[程序分享] Dataframe 的合并 [推广有奖]

  • 0关注
  • 10粉丝

博士生

92%

还不是VIP/贵宾

-

威望
0
论坛币
96 个
通用积分
2.1003
学术水平
2 点
热心指数
15 点
信用等级
2 点
经验
11502 点
帖子
278
精华
0
在线时间
94 小时
注册时间
2016-11-22
最后登录
2022-5-2

楼主
casey_c 发表于 2017-9-8 10:26:20 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币



以下内容转自 数析学院,只节选了部分,有需要的同学可以直接查看原文

将介绍几种常见的 Dataframe 合并方法,包括:
1、合并不同日期索引的 Dataframe
2、按行合并
3、按索引合并


  1. import pandas as pd
  2. import sys
  3. %matplotlib inline
复制代码


1、有两个以日期为索引的 Dataframe,其中一个 Dataframe 有时间戳,这种情况无法将两个 Dataframe 按照日期索引合到一起,那么要如何匹配时间戳呢?

  1. df1 = pd.DataFrame({'col1':[pd.Timestamp('20130102000030'),
  2.                          pd.Timestamp('2013-01-03 00:00:30'),
  3.                          pd.Timestamp('1/4/2013 000030')],
  4.                  'col2':[1,10,18]
  5.                  })
  6. df1
复制代码
1.jpg

  1. df1 = df1.set_index('col1')
  2. df1
复制代码
2.jpg

  1. d = {'col2':[22,10,113]}

  2. i = [pd.Timestamp('20130102'),
  3.      pd.Timestamp('2013-01-03'),
  4.      pd.Timestamp('1/4/2013')]
  5.                  

  6. df2 = pd.DataFrame(data=d, index = i)
  7. df2.index.name = 'col1'
  8. df2
复制代码
3.jpg

  1. # 如果我们尝试把两个 dataframe 加到一起,不会得到我们想要的结果
  2. df2+df1
复制代码
4.jpg

  1. # 将 df2 的索引变得和 df1 一样
  2. # 用以前的已知值填写缺失的值
  3. #
  4. #2013-01-02 00:00:00 => 22
  5. #2013-01-02 00:00:30 => 22
  6. #2013-01-03 00:00:00 => 10
  7. #2013-01-03 00:00:00 => 10
  8. #2013-01-04 00:00:00 => 113
  9. #2013-01-04 00:00:00 => 113
  10. df2.reindex(df1.index, method='pad')
复制代码
5.jpg

  1. # 现在我们可以把它们加起来
  2. df2 = df2.reindex(df1.index, method='pad')
  3. df1+df2
复制代码
6.jpg

以上内容转自 数析学院,后续合并方法有时间再补齐,有需要的同学可以直接查看原文
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Dataframe Frame Data Fram FRA

沙发
casey_c 发表于 2017-9-12 10:19:29

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-5 19:47