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冒泡排序注意要点实例详解
Sep 09 Python
Python排序算法实例代码
Aug 10 Python
详解Python中的四种队列
May 21 Python
实例详解python函数的对象、函数嵌套、名称空间和作用域
May 31 Python
django获取from表单multiple-select的value和id的方法
Jul 19 Python
python3在同一行内输入n个数并用列表保存的例子
Jul 20 Python
Python全栈之列表数据类型详解
Oct 01 Python
python__name__原理及用法详解
Nov 02 Python
基于python读取.mat文件并取出信息
Dec 16 Python
Python打印特殊符号及对应编码解析
May 07 Python
python实现简单的井字棋游戏(gui界面)
Jan 22 Python
requests在python中发送请求的实例讲解
Feb 17 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
简单易用的计数器(数据库)
2006/10/09 PHP
分享一个PHP数据流应用的简单例子
2012/06/01 PHP
两种php给图片加水印的实现代码
2020/04/18 PHP
PHP curl 或 file_get_contents 获取需要授权页面的方法
2017/05/05 PHP
javascript CSS画图之基础篇
2009/07/29 Javascript
Js 时间间隔计算的函数(间隔天数)
2011/11/15 Javascript
JavaScript检测并限制复选框选中个数的方法
2015/08/12 Javascript
javascript中的后退和刷新实现方法
2016/11/10 Javascript
jquery+html仿翻页相册功能
2016/12/20 Javascript
Vue2 使用 Echarts 创建图表实例代码
2017/05/18 Javascript
自定义vue全局组件use使用、vuex的使用详解
2017/06/14 Javascript
jQuery实现的页面详情展开收起功能示例
2018/06/11 jQuery
jQuery使用动画队列自定义动画操作示例
2018/06/16 jQuery
详解Vue 换肤方案验证
2019/08/28 Javascript
Vue实现兄弟组件间的联动效果
2020/01/21 Javascript
通过js随机函数Math.random实现乱序
2020/05/19 Javascript
[01:01:13]2018DOTA2亚洲邀请赛 4.5 淘汰赛 Mineski vs VG 第三场
2018/04/06 DOTA
[57:36]DOTA2-DPC中国联赛 正赛 SAG vs CDEC BO3 第三场 2月1日
2021/03/11 DOTA
python多线程编程方式分析示例详解
2013/12/06 Python
Python实现过滤单个Android程序日志脚本分享
2015/01/16 Python
Python之列表实现栈的工作功能
2019/01/28 Python
利用python实现短信和电话提醒功能的例子
2019/08/08 Python
django和vue实现数据交互的方法
2019/08/21 Python
Python爬虫使用代理IP的实现
2019/10/27 Python
使用keras内置的模型进行图片预测实例
2020/06/17 Python
详解使用HTML5的classList属性操作CSS类
2017/10/13 HTML / CSS
Gap中国官网:美式休闲风服饰
2017/02/05 全球购物
可以使用抽象函数重写基类中的虚函数吗
2013/06/02 面试题
教育局长自荐信范文
2013/12/22 职场文书
请假条格式范文
2014/04/10 职场文书
小学教师2014年度工作总结
2014/12/03 职场文书
慰问信范文
2015/02/14 职场文书
党支部鉴定意见
2015/06/02 职场文书
行政处罚决定书
2015/06/24 职场文书
django学习之ajax post传参的2种格式实例
2021/05/14 Python
Windows10安装Apache2.4的方法步骤
2022/06/25 Servers