首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Python:如何基于列连接文件

Python:如何基于列连接文件
EN

Stack Overflow用户
提问于 2018-08-20 02:24:20
回答 1查看 46关注 0票数 0

我必须加入2个文件基于公共列(年,月,日)。输入文件有标题,输出文件有标题,因为well.The第一个文件有关于温度的信息,如(示例):

year month day min-temp mav-temp
2017 12    13  13       25
2017 12    16  25       32
2017 12    25  34       56

第2个文件的信息沉淀如(示例)

year month day precipitation snow snow-cover
2018  7    6   0.00          0.0  0
2017  12   13  0.04          0.0  0
2017  12   16  0.4           0.04 1

我的预期输出应该是(按日期异步排序的,如果没有找到值,则为空):

year month day min-temp mav-temp precipitation snow snow-cover
2017 12    13  13       25       0.04          0.0  0
2017 12    16  25       32       0.4           0.04 1
2017 12    25  34       56                 
2018  7    6                     0.00          0.0  0

我可以得到关于如何在Python中做到这一点的帮助吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-20 02:27:06

您可以尝试使用mergesort_valuesfillna

new_df = (df1.merge(df2, on=['year','month','day'], how='outer')
          .sort_values(['year','month','day'])
          .fillna(''))

>>> new_df 
   year  month  day min-temp mav-temp precipitation  snow snow-cover
0  2017     12   13       13       25          0.04     0          0
1  2017     12   16       25       32           0.4  0.04          1
2  2017     12   25       34       56                               
3  2018      7    6                               0     0          0
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51920606

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档