python的concat等多种用法详解


Posted in Python onNovember 28, 2018

本文为大家分享了python的concat等多种用法,供大家参考,具体内容如下

1、numpy中的concatenate()函数:

>>> a = np.array([[1, 2], [3, 4]])
>>> b = np.array([[5, 6]])
>>> np.concatenate((a, b), axis=0)
array([[1, 2],
    [3, 4],
    [5, 6]])
>>> np.concatenate((a, b.T), axis=1)
array([[1, 2, 5],
    [3, 4, 6]])

2、pandas中的merge,concat,join

# In[]:数据的合并
# 1 ,merge,类似数据库中的
# (1)内连接,pd.merge(a1, a2, on='key')
# (2)左连接,pd.merge(a1, a2, on='key', how='left')
# (3)右连接,pd.merge(a1, a2, on='key', how='right')
# (4)外连接, pd.merge(a1, a2, on='key', how='outer')
data1 = pd.DataFrame(
  np.arange(0,16).reshape(4,4),
  columns=list('abcd')
)
data1
data2 = [
  [4,1,5,7],
  [6,5,7,1],
  [9,9,123,129],
  [16,16,32,1]
]
data2 = pd.DataFrame(data2,columns = ['a','b','c','d'])
data2
# 内连接 ,交集
pd.merge(data1,data2,on=['b'])
# 左连接 注意:如果 on 有两个条件,on = ['a','b']
# how = 'left','right','outer'
pd.merge(data1,data2,on='b',how='left')
 
# 2,append,相当于R中的rbind
# ignore_index = True:这个时候 表示index重新记性排列,而且这种方法是复制一个样本
data1.append(data2,ignore_index = True)
 
# 3,join
data2.columns=list('pown')
# 列名不能重叠:在这里的用法和R中rbind很像,但是join的用法还是相对麻烦的
result = data1.join(data2)
result
 
# 4,concat 这个方法能够实现上面所有的方法的效果
# concat函数是pandas底下的方法,可以把数据根据不同的轴进行简单的融合
# pd.concat(objs, axis=0, join='outer', join_axes=None, ignore_index=False,
#    keys=None, levels=None, names=None, verify_integrity=False)
 
# 参数说明:
# objs:series,dataframe,或者panel构成的序列list
# axis:0 行,1列
# join:inner,outer
 
# a,相同字段表首尾巴相接
data1.columns = list('abcd')
data2.columns =list('abcd')
data3 = data2
# 为了更好的查看连接后的数据来源,添加一个keys更好查看
pd.concat([data1,data2,data3],keys=['data1','data2','data3'])
 
# b ,列合并(也就是行对齐):axis = 1,
 
pd.concat([data1,data2,data3],axis = 1,keys = ['data1','data2','data3'])
 
data4 = data3[['a','b','c']]
# 在有些数据不存在的时候,会自动填充NAN
pd.concat([data1,data4])
 
# c:join:inner 交集,outer ,并集
pd.concat([data1,data4],join='inner')
 
# 在列名没有一个相同的时候会报错
# data4.index = list('mnp')
# pd.concat([data1,data4])

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中使用hashlib模块处理算法的教程
Apr 28 Python
python判断windows系统是32位还是64位的方法
May 11 Python
Python 对象中的数据类型
May 13 Python
Python入门_浅谈字符串的分片与索引、字符串的方法
May 16 Python
python机器学习之随机森林(七)
Mar 26 Python
django加载本地html的方法
May 27 Python
pygame游戏之旅 添加键盘按键的方法
Nov 20 Python
python 实现批量替换文本中的某部分内容
Dec 13 Python
实例讲解Python 迭代器与生成器
Jul 08 Python
python实现图片转换成素描和漫画格式
Aug 19 Python
Python 操作SQLite数据库的示例
Oct 16 Python
Python趣味爬虫之用Python实现智慧校园一键评教
May 28 Python
CentOS下Python3的安装及创建虚拟环境的方法
Nov 28 #Python
python dataframe向下向上填充,fillna和ffill的方法
Nov 28 #Python
在python中只选取列表中某一纵列的方法
Nov 28 #Python
手把手教你如何安装Pycharm(详细图文教程)
Nov 28 #Python
python 使用re.search()筛选后 选取部分结果的方法
Nov 28 #Python
Python读取excel指定列生成指定sql脚本的方法
Nov 28 #Python
Python从Excel中读取日期一列的方法
Nov 28 #Python
You might like
php GD绘制24小时柱状图
2008/06/28 PHP
php iconv() : Detected an illegal character in input string
2010/12/05 PHP
一个不易被发现的PHP后门代码解析
2014/07/05 PHP
PHP SFTP实现上传下载功能
2017/07/26 PHP
学习ExtJS fit布局使用说明
2009/10/08 Javascript
JavaScript全排列的六种算法 具体实现
2013/06/29 Javascript
js使用for循环及if语句判断多个一样的name
2014/09/09 Javascript
javascript自动生成包含数字与字符的随机字符串
2015/02/09 Javascript
HTML+CSS+JS实现完美兼容各大浏览器的TABLE固定列
2015/04/26 Javascript
Bootstrap开发实战之第一次接触Bootstrap
2016/06/02 Javascript
Bootstrap表单使用方法详解
2017/02/17 Javascript
详解angularJs模块ui-router之状态嵌套和视图嵌套
2017/04/28 Javascript
详细分析单线程JS执行问题
2017/11/22 Javascript
vue实现验证码按钮倒计时功能
2018/04/10 Javascript
在vue-cli搭建的项目中增加后台mock接口的方法
2018/04/26 Javascript
Vue实现6位数密码效果
2018/08/18 Javascript
详解angular2如何手动点击特定元素上的点击事件
2018/10/16 Javascript
微信小程序外卖选购页实现切换分类与数量加减功能案例
2019/01/15 Javascript
详解a标签添加onclick事件的几种方式
2019/03/29 Javascript
vue实现简易图片左右旋转,上一张,下一张组件案例
2020/07/31 Javascript
Python实现解析Bit Torrent种子文件内容的方法
2017/08/29 Python
解决django后台样式丢失,css资源加载失败的问题
2019/06/11 Python
详解Django将秒转换为xx天xx时xx分
2019/09/27 Python
波兰香水和化妆品购物网站:Notino.pl
2017/11/07 全球购物
世界上第一个创建了罩杯系统的美国内衣品牌:Maidenform
2019/03/23 全球购物
荷兰浴室和卫浴网上商店:Badkamerxxl.nl
2020/10/06 全球购物
材料采购员岗位职责
2013/12/17 职场文书
2015出纳试用期工作总结
2014/12/12 职场文书
2015年技术员工作总结
2015/04/10 职场文书
军训心得体会范文(2016最新篇)
2016/01/11 职场文书
PHP连接MSSQL数据库案例,PHPWAMP多个PHP版本连接SQL Server数据库
2021/04/16 PHP
Ajax常用封装库——Axios的使用
2021/05/08 Javascript
sql server 累计求和实现代码
2022/02/28 SQL Server
CI Games宣布《堕落之王2》使用虚幻引擎5制作 预计将于2023年正式发售
2022/04/11 其他游戏
解决Windows Server2012 R2 无法安装 .NET Framework 3.5
2022/04/29 Servers
一次SQL查询优化原理分析(900W+数据从17s到300ms)
2022/06/10 SQL Server