栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Pandas合并DataFrame数据写入Excels

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Pandas合并DataFrame数据写入Excels

concat对比merge

1.要想实现sql中的join,需要使用merge方法,能指定列key。
2.pandas中的join方法,相比merge,只是个弟弟,使用场景有限,相当于concat中的方向为1的合并。
3.concat实现的只是将两个或多个df按行或者案列简单进行拼接的功能,并没有实现sql中的join功能,默认纵向合并。

代码

import pandas as pd
import sqlalchemy
from sqlalchemy import Table,MetaData,ForeignKey,Column,Integer,String,DateTime,Date,Float

# data=pd.read_excel(r'C:Users44572Downloads制造中心-生产日报初始化 (2).xlsx',header=0,sheet_name='制造中心-生产日报初始化')
# # index为2的那一行数据
# print(data.loc[2])
# # 取出某列列名为预算得率的数据
# print(data[['预算得率']])
#
# df1=pd.DataFrame(data)
# df2=pd.DataFrame(data)
#
# pd.concat([df1,df2])

left =pd.DataFrame({
        'key1':['K0','K0','K1','K2'],
        'key2': ['K0', 'K1', 'K0', 'K1'],
        'A':['A0','A1','A2','A3'],
        'B':['B0','B1','B2','B3']
})
right =pd.DataFrame({
        'key1':['K0','K1','K1','K2'],
        'key2': ['K0', 'K0', 'K0', 'K0'],
        'C':['C0','C1','C2','C3'],
        'D':['D0','D1','D2','D3']
})
print(left)
print('================merge多键关联后=====================')
result=pd.merge(left, right,on=['key1','key2'],how='left')
print(result)
result.to_csv(r'C:Users44572Downloadsresult.csv')
#列连接  纵向连接 补全所有字段后union all
print('================补全所有字段后union all=====================')
print(pd.concat([left, right],axis=0))
print('================横向outer join取出所有字段=====================')
print(pd.concat([left, right],axis=1))
print('================concat的内连接=====================')
print(pd.concat([left, right],axis=1,join='inner'))

查看merge多key关联后的结果

 最后写出到excel中数据的样子

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1030976.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号