Pandas 的轴向连接 concat
在pandas里面,另一种数据何必运算也被称为连接(concatenation)、绑定(binding)或堆叠(stacking)。
Numpy的轴向连接, concatenation
Numpy有一个用于合并原始Numpy数组的concatenation函数:
In [4]: arr = np.arange(12).reshape((3, 4)) In [5]: arr
Out[5]:
array([[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11]])
In [7]: np.concatenate([arr, arr], axis=1)
Out[7]:
array([[ 0, 1, 2, 3, 0, 1, 2, 3],
[ 4, 5, 6, 7, 4, 5, 6, 7],
[ 8, 9, 10, 11, 8, 9, 10, 11]])
pandas --Series--concat函数
需要考虑的问题:
1. 如果各对象其他轴上的索引不同, 那些轴应该是做并集还是交集?
2. 结果对象中的分组需要各不相同吗?
3. 用于连接的轴重要吗?
用concat将值和索引粘合在一起:

默认情况下, concat是在axis=0上工作。如果传入传入axis=1, 则结果就会变成一个DataFrame

求交集

指定索引名称:join_axes

如果参与连接的片段中区分不开。假设你想要在连接轴上创建一个层次化索引。使用keys参数即可达到这个目的:

如果使用unstack()方法呢

concat axis=1方向
如果沿着axis=1对Series进行合并, 则keys就会成为DataFrame的列头:

DataFrame的对象也是一样:

最后考虑一个问题,行索引, 也就是index
In []: from pandas import Series, DataFrame In []: import pandas as pd In []: import numpy as np In []: df1 = DataFrame(np.random.randn(, ), columns=[i for i in "abcd"]) In []: df2 = DataFrame(np.random.randn(, ), columns=[i for i in "bda"]) In []: df1 Out[]: a b c d -1.688676 0.839406 -0.196775 0.864225 -0.145041 1.273715 0.532980 0.648970 0.021084 -1.824193 0.177116 -1.137237 In []: df2 Out[]: b d a -0.418477 0.486801 0.700591 -1.543646 0.506380 1.407013
代码

concat函数的参数

Pandas 的轴向连接 concat的更多相关文章
- 9-Pandas之数据合并与轴向连接(pd.concat()的详解)
数据合并:由于数据可能是不同的格式,且来自不同的数据源,为了方便之后的处理与加工,需要将不同的数据转换成一个DataFrame. Numpy中的concatenate().vstack().hstac ...
- python数据表的合并(python pandas join() 、merge()和concat()的用法)
merage# pandas提供了一个类似于关系数据库的连接(join)操作的方法<Strong>merage</Strong>,可以根据一个或多个键将不同DataFrame中 ...
- js中数组连接concat()
数组连接concat() concat() 方法用于连接两个或多个数组.此方法返回一个新数组,不改变原来的数组. 语法 arrayObject.concat(array1,array2,...,arr ...
- pandas的合并、连接、去重、替换
import pandas as pd import numpy as np # merge合并 ,类似于Excel中的vlookup df1 = pd.DataFrame({'key': ['K0' ...
- MySQL 字符串连接CONCAT()函数
MySQL字符串连接函数 使用方法:CONCAT(str1,str2,-) 返回结果为连接参数产生的字符串.如有任何一个参数为NULL ,则返回值为 NULL. 注意:如果所有参数均为非二进制字符串, ...
- MPU9250九轴陀螺仪--连接MPU9250
树莓派连接MPU9250九轴加速度传感器1,配线方法 树莓派侧 MPU9250侧 3.3V VCC (SDA)GPIO2 SDA (SCL)GPIO3 SCL GND GND 2,I2C有效在树莓派里 ...
- 八. Pandas的轴
axis=0代表跨行(down),而axis=1代表跨列(across) 使用0值表示沿着每一列或行标签\索引值向下执行方法 使用1值表示沿着每一行或者列标签模向执行对应的方法 下图代表在DataFr ...
- JS对象 数组连接 concat() 方法用于连接两个或多个数组。此方法返回一个新数组,不改变原来的数组。 语法 arrayObject.concat(array1,array2,.arrayN)
concat() 方法用于连接两个或多个数组.此方法返回一个新数组,不改变原来的数组. 语法 arrayObject.concat(array1,array2,...,arrayN) 参数说明: 注意 ...
- pandas的学习6-合并concat
import pandas as pd import numpy as np ''' pandas处理多组数据的时候往往会要用到数据的合并处理,使用 concat是一种基本的合并方式. 而且conca ...
随机推荐
- 每日英语:South India's Streetside Coffee Culture
Early one morning last week I queued outside Sri Gopi Iyengar Coffee and Tiffin Center, a coffee bar ...
- maven生成jar,运行却提示没有“没有主清单属性”
转自:http://www.jianshu.com/p/fd5bd8657852 修改pom.xml <project xmlns="http://maven.apache.org/P ...
- VS调试dll
(ps:编译dll的工程最好配置一下预编译宏:“配置属性”/“C或C++”/“预处理器”/“预处理器定义”,选择编辑,在最下面加一行“_CRT_SECURE_NO_WARNINGS”) 1. 右键dl ...
- python使用requests时报错requests.exceptions.SSLError: HTTPSConnectionPool
报错信息 Traceback (most recent call last): File "<stdin>", line 1, in <module> Fi ...
- 【Android】Intent解读
Intent 的作用 Intent 是一个将要执行的动作的抽象的描述,一般来说是作为参数来使用,由Intent来协助完成android各个组件之间的通讯. 比如说调用startActivity()来启 ...
- gradle查看依赖关系并写入到文本文件的命令
gradle dependencies>xx.txt
- ubuntu wireshark找不到网卡及开启IP转发
wireshark找不到网卡问题? 解决办法1:sudo wireshark 解决办法2: 1)添加用户组,我以wireshark为例 sudo groupadd wireshark 2)将dumpc ...
- pyspark实现自动提示以及代码高亮
pyspark实现自动提示以及代码高亮 起因 打开pyspark发现啥提示都没有,太不友好了啊,然后忍不住谷歌了一下,发现了这篇文章,内容如下: 1.pip install ptpython; 2.e ...
- LeetCode: Construct Binary Tree from Inorder and Postorder Traversal 解题报告
Construct Binary Tree from Inorder and Postorder Traversal Given inorder and postorder traversal of ...
- 解决sql server不允许保存表结构修改的问题
说明(2017-5-25 15:38:09):