类似vlookup

import pandas as pd

file = pd.read_csv('NIN411PF.CSV', encoding='ANSI')

a = pd.DataFrame({'PNUM95':['1609724175'],
'REFN95':['899270']
})
#按2个条件查询
file1 = pd.merge(file, a, on=['PNUM95','REFN95']) file1.to_csv('abc.csv')

  

获取列标集, 行标集

后面不能加()

df.columns

df.index

增加一列

import numpy as np
import pandas as pd df1 = pd.DataFrame(np.ones((3,4))*0, columns=['a','b','c','d'])
df2 = pd.DataFrame(np.ones((3,4))*1, columns=['a','b','c','d'])
df3 = pd.DataFrame(np.ones((3,4))*2, columns=['a','b','c','d']) res = pd.concat([df1, df2, df3])
res['e']=None
print(res)

  

增加2列

import numpy as np
import pandas as pd df1 = pd.DataFrame(np.ones((3,4))*0, columns=['a','b','c','d'])
df2 = pd.DataFrame(np.ones((3,4))*1, columns=['a','b','c','d'])
df3 = pd.DataFrame(np.ones((3,4))*2, columns=['a','b','c','d'])
res = pd.concat([df1,df2,df3])
res = pd.concat([res, pd.DataFrame(columns=['AAA', 'bbb'])])
#要加sort,

  

横向合并

import numpy as np
import pandas as pd df1 = pd.DataFrame(np.ones((3,4))*0, columns=['a','b','c','d'])
df2 = pd.DataFrame(np.ones((3,4))*1, columns=['a','b','c','d'])
df3 = pd.DataFrame(np.ones((4,4))*2, columns=['a','b','c','d']) res = pd.concat([df1,df2,df3], axis=1)
res = pd.concat([df1,df2,df3], axis=0, ignore_index=True)    #axis=0 纵向合并, index行标重新编写

  

加3列

import numpy as np
import pandas as pd df1 = pd.DataFrame(np.ones((3,4))*0, columns=['a','b','c','d'])
df2 = pd.DataFrame(np.ones((3,4))*1, columns=['a','b','c','d'])
df3 = pd.DataFrame(np.ones((4,4))*2, columns=['a','b','c','d']) res = pd.concat([df1,df2,df3], axis=0, ignore_index=True)
df = pd.concat([res, pd.DataFrame(columns=['x','y','z'])]) print(df)

  

字符转换

import numpy as np
import pandas as pd df1 = pd.DataFrame(np.ones((3,4))*0, columns=['a','b','c','d'])
df2 = pd.DataFrame(np.ones((3,4))*1, columns=['a','b','c','d'])
df3 = pd.DataFrame(np.ones((4,4))*2, columns=['a','b','c','d']) res = pd.concat([df1,df2,df3], axis=0, ignore_index=True)
res = res.astype({'a':'str','b':'str'}) #a, b列转成字符, #res = res.astype(str) #整个数据表全转成字符
print(res.a)

  

分割一列为多列, 修改列标

import numpy as np
import pandas as pd res = pd.read_csv('Book1.csv') df1 = res.Item.str.split('-', expand=True) # 按 - 分割, 加 expand=True
df2 = pd.concat([res, df1], axis=1)
df2.columns = ['a','b','c','d','e'] #重新设置列表 df2.rename(columns={'e':'xx'}, inplace=True) #修改制定列名, 加 inplace=True print(df2)

  

修改行标列标

>>>data.rename(index={'A':'D', 'B':'E', 'C':'F'}, columns={'a':'d', 'b':'e', 'c':'f'}, inplace = True)
>>>data

  

print(df2.head(0))  ##返回data的前几行数据,默认为前五行,需要前十行则data.head(10)
print(df2.tail(1)) #返回data的后几行数据,默认为后五行,需要后十行则data.tail(10)

pandas 应用的更多相关文章

  1. pandas基础-Python3

    未完 for examples: example 1: # Code based on Python 3.x # _*_ coding: utf-8 _*_ # __Author: "LEM ...

  2. 10 Minutes to pandas

    摘要   一.创建对象 二.查看数据 三.选择和设置 四.缺失值处理 五.相关操作 六.聚合 七.重排(Reshaping) 八.时间序列 九.Categorical类型   十.画图      十一 ...

  3. 利用Python进行数据分析(15) pandas基础: 字符串操作

      字符串对象方法 split()方法拆分字符串: strip()方法去掉空白符和换行符: split()结合strip()使用: "+"符号可以将多个字符串连接起来: join( ...

  4. 利用Python进行数据分析(10) pandas基础: 处理缺失数据

      数据不完整在数据分析的过程中很常见. pandas使用浮点值NaN表示浮点和非浮点数组里的缺失数据. pandas使用isnull()和notnull()函数来判断缺失情况. 对于缺失数据一般处理 ...

  5. 利用Python进行数据分析(12) pandas基础: 数据合并

    pandas 提供了三种主要方法可以对数据进行合并: pandas.merge()方法:数据库风格的合并: pandas.concat()方法:轴向连接,即沿着一条轴将多个对象堆叠到一起: 实例方法c ...

  6. 利用Python进行数据分析(9) pandas基础: 汇总统计和计算

    pandas 对象拥有一些常用的数学和统计方法.   例如,sum() 方法,进行列小计:   sum() 方法传入 axis=1 指定为横向汇总,即行小计:   idxmax() 获取最大值对应的索 ...

  7. 利用Python进行数据分析(8) pandas基础: Series和DataFrame的基本操作

    一.reindex() 方法:重新索引 针对 Series   重新索引指的是根据index参数重新进行排序. 如果传入的索引值在数据里不存在,则不会报错,而是添加缺失值的新行. 不想用缺失值,可以用 ...

  8. 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍

    一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...

  9. pandas.DataFrame对行和列求和及添加新行和列

    导入模块: from pandas import DataFrame import pandas as pd import numpy as np 生成DataFrame数据 df = DataFra ...

  10. pandas.DataFrame排除特定行

    使用Python进行数据分析时,经常要使用到的一个数据结构就是pandas的DataFrame 如果我们想要像Excel的筛选那样,只要其中的一行或某几行,可以使用isin()方法,将需要的行的值以列 ...

随机推荐

  1. 调用另一个文件的python代码【转载】

    转自:https://blog.csdn.net/u010412719/article/details/47089883 例如我们有a.py和b.py两个文件,当我们需要在b.py文件中应用a.py中 ...

  2. Sql Server 主键 外键约束

    主键约束 表通常具有包含唯一标识表中每一行的值的一列或一组列. 这样的一列或多列称为表的主键 (PK),用于强制表的实体完整性. 由于主键约束可保证数据的唯一性,因此经常对标识列定义这种约束. 如果为 ...

  3. java框架常见的面试题

    1.谈谈你对MVC的理解 MVC是Model—View—Controler的简称.即模型—视图—控制器.MVC是一种设计模式,它强制性的把应用程序的输入.处理和输出分开. MVC中的模型.视图.控制器 ...

  4. 8.一个页面从输入 URL 到页面加载显示完成,这个过程中都发生了什么?

    注:这题胜在区分度高,知识点覆盖广,再不懂的人,也能答出几句, 而高手可以根据自己擅长的领域自由发挥,从URL规范.HTTP协议.DNS.CDN.数据库查询. 到浏览器流式解析.CSS规则构建.lay ...

  5. lnmp----------lnmp集成环境使用lnmp安装包安装lnmp集成环境的步骤

    1.先看下screen -S lnmp 命令是否存在,不存在则安装.这个是个什么东东呢?百度一下( GNU Screen是一款由GNU计划开发的用于命令行终端切换的自由软件.用户可以通过该软件同时连接 ...

  6. struts2启动时,出现的com.opensymphony.xwork2.util.finder.ClassFinder - Unable to read class 错误解决办法

    在项目的struts.xml文件中第一行加入<constant name="struts.convention.package.locators" value="c ...

  7. schame定义及用处

    一.schame详解 http://www.cnblogs.com/Neo-ds/p/4790413.html 1.先明确一点,SQL Server中模式(schema)这个概念是在2005的版本里才 ...

  8. idea上更新文件到github上

    1.不是最新文件,那么文件颜色就不一样.操作如下: 2.本地提交   .提交文件列表,提交说明,文件前后对比,确定了后就提交 3.推送到github. (1) (2)

  9. windows8安装msi或exe软件提示2503错误的解决办法

    windows8以后的版本安装msi软件(比如nodejs.msi.Git.msi.python.msi.T ortoiseSVN.msi)的时候老师出现2503.2502的错误,究其原因还是系统权限 ...

  10. ling join 报错The specified LINQ expression contains references to queries that are associated with different cont

    The specified LINQ expression contains references to queries that are associated with different cont ...