您的位置: 网站首页> Pandas教程> 当前文章
concat函数合并DataFrame与Series、添加列操作
老董-我爱我家房产SEO2020-06-28181围观,112赞
pandas.concat()函数可以合并多个df也可以合并df与Series,主要掌握5个参数:
objs:列表,每个元素是Series或者df
axis:左右还是上下合并,axis=0为上下合并
join:对齐方式inner、outer。默认是outer
sort:version 0.23.0.版本新增的,一般设为False。对齐方式inner会忽略改参数,
ignore_index:是否忽略掉原来的索引
我们用一些小案例来学习下concat函数。
1、默认上下合并,对齐方式为outer,不忽略原来的索引
# -*- coding: utf-8 -*-
import pandas as pd
dict1 = {'城市':['北','上','广','深'],'面积':[100,150,200,300],'天气':['差','中','优','好']}
dict2 = {'城市':['北','上','广','深'],'面积':[100,150,200,300],'人口':['多','多','多','多']}
df1 = pd.DataFrame(dict1)
df2 = pd.DataFrame(dict2)
print(df1)
print('-----------')
print(df2)
print('-----------')
df = pd.concat([df1,df2],axis=0,sort=False)
print(df)
城市 面积 天气 0 北 100 差 1 上 150 中 2 广 200 优 3 深 300 好 ----------- 城市 面积 人口 0 北 100 多 1 上 150 多 2 广 200 多 3 深 300 多 ----------- 城市 面积 天气 人口 0 北 100 差 NaN 1 上 150 中 NaN 2 广 200 优 NaN 3 深 300 好 NaN 0 北 100 NaN 多 1 上 150 NaN 多 2 广 200 NaN 多 3 深 300 NaN 多
2、上下合并,对齐方式为inner,不忽略原来的索引
# -*- coding: utf-8 -*-
import pandas as pd
dict1 = {'城市':['北','上','广','深'],'面积':[100,150,200,300],'天气':['差','中','优','好']}
dict2 = {'城市':['北','上','广','深'],'面积':[100,150,200,300],'人口':['多','多','多','多']}
df1 = pd.DataFrame(dict1)
df2 = pd.DataFrame(dict2)
print(df1)
print('-----------')
print(df2)
print('-----------')
df = pd.concat([df1,df2],axis=0,join='inner')
print(df)
城市 面积 天气 0 北 100 差 1 上 150 中 2 广 200 优 3 深 300 好 ----------- 城市 面积 人口 0 北 100 多 1 上 150 多 2 广 200 多 3 深 300 多 ----------- 城市 面积 0 北 100 1 上 150 2 广 200 3 深 300 0 北 100 1 上 150 2 广 200 3 深 300
3、添加一列Series,对齐方式为outer,不忽略原来的索引
# -*- coding: utf-8 -*-
import pandas as pd
dict1 = {'城市':['北','上','广','深'],'面积':[100,150,200,300],'天气':['差','中','优','好']}
df1 = pd.DataFrame(dict1)
print(df1)
print('-----------')
s = pd.Series(['下','上','中','上'],name='风景')
df = pd.concat([df1,s],axis=1)
print(df)
print('-----注意看,索引顺序变了---')
df = pd.concat([s,df1],axis=1)
print(df)
城市 面积 天气 0 北 100 差 1 上 150 中 2 广 200 优 3 深 300 好 ----------- 城市 面积 天气 风景 0 北 100 差 下 1 上 150 中 上 2 广 200 优 中 3 深 300 好 上 -----注意看,索引顺序变了--- 风景 城市 面积 天气 0 下 北 100 差 1 上 上 150 中 2 中 广 200 优 3 上 深 300 好
很赞哦!
python编程网提示:转载请注明来源www.python66.com。
有宝贵意见可添加站长微信(底部),获取技术资料请到公众号(底部)。同行交流请加群
相关文章
文章评论
-
concat函数合并DataFrame与Series、添加列操作文章写得不错,值得赞赏


