pandas 之 concat
本文摘自:http://pandas.pydata.org/pandas-docs/stable/merging.html
前提:
ide:
- liuqian@ubuntu:~$ ipython
准备:
- In [1]: import pandas as pd
- In [2]: df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'],
- ...: 'B': ['B0', 'B1', 'B2', 'B3'],
- ...: 'C': ['C0', 'C1', 'C2', 'C3'],
- ...: 'D': ['D0', 'D1', 'D2', 'D3']},
- ...: index=[0, 1, 2, 3])
- ...:
- In [3]: df2 = pd.DataFrame({'A': ['A4', 'A5', 'A6', 'A7'],
- ...: 'B': ['B4', 'B5', 'B6', 'B7'],
- ...: 'C': ['C4', 'C5', 'C6', 'C7'],
- ...: 'D': ['D4', 'D5', 'D6', 'D7']},
- ...: index=[4, 5, 6, 7])
- ...:
- In [4]: df3 = pd.DataFrame({'A': ['A8', 'A9', 'A10', 'A11'],
- ...: 'B': ['B8', 'B9', 'B10', 'B11'],
- ...: 'C': ['C8', 'C9', 'C10', 'C11'],
- ...: 'D': ['D8', 'D9', 'D10', 'D11']},
- ...: index=[8, 9, 10, 11]) ...: In [4]: frames = [df1, df2, df3] In [5]: result = pd.concat(frames), 11])
- ...:
- In [5]: frames = [df1, df2, df3] # 不要忘了
- , 11]) ...: In [4]: frames = [df1, df2, df3] In [5]: result = pd.concat(frames)
语法:
- pd.concat(objs, axis=0, join='outer', join_axes=None, ignore_index=False, keys=None, levels=None, names=None, verify_integrity=False, copy=True)
实例1:
- In [6]: result = pd.concat(frames) # 等价于 result = df1.append([df2, df3])
- In [7]: result = pd.concat(frames, axis=1)
实例2:
- In [8]: result = pd.concat(frames, keys=['x', 'y', 'z'])
- In [9]: result = pd.concat(frames, keys=['x', 'y', 'z'], axis=1)
实例3:
- In [10]: df4 = pd.DataFrame({'B': ['B2', 'B3', 'B6', 'B7'],
- ...: 'D': ['D2', 'D3', 'D6', 'D7'],
- ...: 'F': ['F2', 'F3', 'F6', 'F7']},
- ...: index=[2, 3, 6, 7])
- ...:
- In [11]: result = pd.concat([df1, df4], axis=1, join='inner')
- In [12]: result = pd.concat([df1, df4], join='inner')
实例4:
- In [13]: result = pd.concat([df1, df4], axis=1, join_axes=[df1.index])
- In [14]: result = pd.concat([df1, df4], join_axes=[df1.columns])
实例5:
- In [15]: result = pd.concat([df1, df4], ignore_index=True) # 等价于 df1.append(df4, ignore_index=True)
- In [16]: result = pd.concat([df1, df4], axis=1, ignore_index=True)
总结:
- 1, axis=0, 对行操作 axis=1, 对列操作
2. join='outer', 连接各个数据 join='inner',只取各个数据的公共部分
3. join_axes=[df1.index], 保留与df1的行标签一样的数据,配合axis=1一起用
join_axes=[df1.columns],保留与df1的列标签一样的数据,不要添加axis=1
4. ignore_index=False, 保留原索引 ignore_index=True,忽略原索引并生成新索引
5. keys=['x', 'y', 'z'] 对组成的每个df重新添加个索引
pandas 之 concat的更多相关文章
- pandas的concat函数和append方法
pd.concat(objs, axis=0, join='outer', join_axes=None, ignore_index=False,keys=None, levels=None, nam ...
- Pandas 合并 concat
pandas处理多组数据的时候往往会要用到数据的合并处理,使用 concat是一种基本的合并方式.而且concat中有很多参数可以调整,合并成你想要的数据形式. 1.axis(合并方向):axis=0 ...
- pandas 级联 concat append
连接的一个有用的快捷方式是在Series和DataFrame实例的append方法.这些方法实际上早于concat()方法. 它们沿axis=0连接 #encoding:utf8 import pan ...
- Pandas的concat方法
在此我用的concat作用是加入新的记录,存储数据来用过的,不知道数据量大时候,效率会怎样 # 使用pandas来保存数据 df1 = pd.DataFrame([poem], columns=['p ...
- 第十五节:pandas之concat()级联
Pandas 提供了concat()函数可以轻松的将Series.DataFrame对象进行合并在一起. pandas.concat(obj , axis=0 , join="inner&q ...
- pandas(七)数据规整化:清理、转换、合并、重塑之合并数据集
pandas对象中的数据可以通过一些内置的方式进行合并: pandas.merge 可根据一个或多个键将不同的DataFrame中的行连接起来. pandas.concat可以沿着一条轴将多个对象堆叠 ...
- Numpy&Pandas
Numpy & Pandas 简介 此篇笔记参考来源为<莫烦Python> 运算速度快:numpy 和 pandas 都是采用 C 语言编写, pandas 又是基于 numpy, ...
- Pandas系列(十)-转换连接详解
目录 1. 拼接 1.1 append 1.2 concat 2. 关联 2.1 merge 2.2 join 数据准备 # 导入相关库 import numpy as np import panda ...
- 【学习】数据规整化:清理、转换、合并、重塑【pandas】
这一部分非常关键! 数据分析和建模方面的大量编程工作都是用在数据准备上的:加载.清理.转换以及重塑. 1.合并数据集 pandas对象中的数据可以通过 一些内置的方式进行合并: pandas.merg ...
随机推荐
- JavaScript类库汇总
日期处理Moment.js http://momentjs.cn/ http://momentjs.com/ nodejslinq,jslinq http://jslinq.codepl ...
- R语言基本语法
R语言基本语法 基本数据类型 数据类型 向量 vector 矩阵 matrix 数组 array 数据框 data frame 因子 factor 列表 list 向量 单个数值(标量)没有单独的数据 ...
- soapUi下载
http://dl.eviware.com/list_soapui2.html http://smartbearsoftware.com/repository/eviware/jars/
- php生成二维码的几种方式
一些php生成二维码的方式:1.google开放api:2.php类库PHP QR Code:3.libqrencode:4.QRcode Perl CGI & PHP scripts 1.g ...
- 3.4 Templates -- Displaying A List of Items(展示一个集合)
一. 概述 1. example 如果你需要遍历一个对象集合,使用Handlebars的{{#each}}. <ul> {{#each people key="id" ...
- [翻译] Rails::Railtie
原文:http://api.rubyonrails.org/classes/Rails/Railtie.html Railtie 是 Rails 框架的核心,提供几个钩子来扩展或修改 Rails 的 ...
- css 文档流中块级非替换元素水平区域的计算规则(1)
最近在读<Basic Visual Formatting in CSS>,结合以前看的<css权威指南>和css标准.今天就做个笔记. 以前在遇到一些宽度不明确指明的一些布局的 ...
- Thinkphp在Lnmp环境下部署项目先后报错问题解决:_STORAGE_WRITE_ERROR_:./Application/Runtime/Cache/Home/...Access denied.
首先报错:_STORAGE_WRITE_ERROR_:./Application/Runtime/Cache/Home/769e70f2e46f34ceb60619bbda5e4691.php 解决此 ...
- ubuntu16.04更新源的时候显示:由于没有公钥,无法验证下列签名: NO_PUBKEY 3D5919B448457EE0【学习笔记】
平台:ubuntu16.04 作者:庄泽彬(欢迎转载,请注明作者) 在添加了bazel的源之后执行sudo apt-get update出现下面的错误 echo "deb [arch=amd ...
- 【查看数据占用空间】查看hbase表占用的磁盘情况
使用命令:hdfs dfs -du /apps/hbase/data/data/default/