pandas常用函数整理,作为个人笔记。

仅标记函数大概用途做索引用,具体使用方式请参照pandas官方技术文档。

约定

from pandas import Series, DataFrame

import pandas as pd

import numpy as np

带.的为Series或者DataFrame对象的方法,只列举了部分关键字参数。

1、基础

.values 获取值,返回array对象

.index 获取(行)索引,返回索引对象

Series( index=) 创建Series,可指定索引

pd.isnull pd.notnull 返回是否为缺失值的布尔型数组

.isnull 同上

DataFrame(columns=,index=) 创建DataFrame,可指定行索引,列索引

.T 行列转置

del 关键字 删除

.reindex(method=, fill_value=, index=, columns=) 重新索引,即按照新索引创建新对象,可指定缺失值 填充方式,缺失值插值方式,行索引,列索引

.ix[ , ] 同上,添入行、列索引,可传入列表

.drop(axis=) 删除指定轴上的指定值

.apply(axis=) 沿指定轴应用函数

.sort_index(axis=, by=列名) 对索引排序,可根据指定列的值进行排序

.order 按值排序

.rank(ascending=, method=, axis=) 排名

.index.is_unique 检查索引值唯一性(是否有重复项)

2、约简类,可指定轴、是否排除缺失值、层次化索引分组约简。

.sum(axis=, skipna=, level=) 求和

.mean 均值

.idxmax 返回最大值索引

.cumsum 累积和

.describe统计描述汇总

.count 非nan值数量

.min 最小值

.quantile 分位数

.median 中位数

.mad 平均绝对离差

.var 方差

.std 标准差

.skew 偏度

.kurt 峰度

.cumprod 累积积

.diff

.pct_change

.tail 显示尾行,五个

.head 显示开始行,五个

.corr 求相关系数(Series和Series,或者DataFrame和DataFrame)

.cov 求协方差

.corrwith 求相关系数(DataFrame的行或列 与Series或DataFrame)

.unique 得到唯一值数组

.value_counts(sort=) 求值频率,可传入False指定降序排列

.isin 判断成员资格

.dropna(how=, axis=, thresh=) 丢弃缺失数据,对DataFrame可指定丢弃方式

.fillna(inplace=,method=, limit=) 用指定值或字典填充缺失数据,可指定是否就地修改,填充方式,填充数量限制

.unstack 行索引转列索引

.stack 列索引转行索引

MultiIndex.from_arrays 用数组构建层次化索引

.swaplevel 重排层次化索引分级顺序

.sortlevel 根据单个级别的值对数据排序

.set_index(drop=) 将某一列转为行索引

.reset_index 将行索引转为列

.irow 根据整数位置选取行

.icol 根据整数位置选取列

pd.Panel 创建面板数据

.to_panel DataFrame转换为Panel

.to_frame Panel转换为DataFrame

3、数据读取

pd.read_csv(sep=, delim_whitespace=, header=,skiprows=,converters=,keep_date_col=,parse_date=,na_values=,nrows=,skip_footer=, )

最常用的csv和text文件读取方式

.to_csv 将数据写入csv

.from_csv 从csv读取数据

4、数据规整

pd.merge(on=,how=,suffixes=,left_index=,right_index=) 横向合并

.join(how=, on=, ) 按索引合并,可传入一组DataFrame

pd.concat(axis=,join=,join_axes=,keys=,names=,ignore_index=) 纵向连接,也可以传入轴进行横向连接

np.nan nan值

np.where 矢量化if-else表达,第一个为判断条件,可为布尔型数组,后面两个为值

.combine_first 用一个数据为另一个数据“打补丁”

.pivot 长格式转宽格式,指定行索引,列索引名,填充值列

.duplicated 返回布尔型Series,表示各行是否是重复行(第一次出现的值为False,再次出现为True)

.drop_duplicates(take_last=) 返回移除了重复行的DataFrame,可指定是保留第一个还是最后一个

.map 元素级转换函数,可将函数应用于Series或DataFrame某列

.replace 替换指定值,第一个参数为要被替换的值,第二个是用来替换的值,支持字典

.rename(index=, columns=,inplace=) 轴标签更新,接受字典,可就地修改

pd.cut(right=,labels=) 面元划分

pd.value_counts 值频率计算

.any 可用来过滤异常值,里面为容忍度整数

.take 按指定顺序重排序,可接受列表

np.random.permutation 产生随机重排列

pd.get_dummies(prefix=) 计算哑变量矩阵,可指定列前缀

字符串对象方法

.split 按指定值拆分字符串

.strip 修剪空白符和换行符

.join 用指定值连接字符串

.index 返回索引,找不到则引发异常

.find 返回索引,找不到返回-1

.count 返回指定子串出现次数

re.compile 编译regex对象

re.compile.findall 得到匹配regex的所有模式

pd中的方法

.str.contains 按指定模式搜索,返回布尔型数组

.str.match 按指定模式获取

.str.get 按指定模式获取

.str[] 按指定模式获取

5、分组运算

.groupby(level=, axis=,group_keys=) 进行按列分组,然后就可以调用进行聚合或其他运算了

.size 返回含有分组大小的Series

.agg(as_index=) 可对已经分组的对象应用,传入函数,或者针对不同列的不同函数,用字典。

.add_prefix 为列索引加前缀

.transform 传入函数,将指定函数应用到各个分组,将结果放置到适当的位置

.apply() 一般性的“拆分-应用-合并”函数,超级有用

pd.pivot_table(rows=, cols=, margins=, aggfunc=, fill_value=,) 分组聚合,可指定需要聚合的列,分组列,添加分项小计,传入聚合函数,缺失值设置。

pd.crosstab计算分组频率的交叉表

6、时序分析

from datetime import datetime

datetime.now 获取当前时间

now.year 年

now.month 月

now.day 日

.strftime 日期转为字符串,可指定格式

.strptime 字符串转为日期,可指定格式

from dateutil.parser import parse

parse 解析日期

pd.to_datetime 解析日期

pd.date_range(periods=, freq=) 生成日期索引

pd.DatetimeIndex 创建时间序列

.resample(how=,closed=,loffset=,fill_method=,limit=) 重采样

.shift(freq=) 数据前移或滞后,正数为滞后,可指定周期

.tz_locallize 将单纯时区转本地化

.tz_convert 对本地化时区进行时区转换

pd.Timestamp 创建时间戳序列

pd.Period 创建时期序列

pd.period_range 创建时期范围序列

pd.PeriodIndex 创建时期索引

.asfreq 时期频率转换

.to_timestamp 时期转时间戳

.to_period 时间戳转时期

.plot 画图

缺点和不足:未针对Series和DataFrame的方法做明确区别;index对象的方法未列举;其他数据读入方式未列取;关键字参数仅列举了部分;可视化未列举;时序分析写的过简;pandas版本存在更新,函数及参数未完全验证;一些操作技巧未说明。

补充:了解基础部分就可以辅助完成策略编写,而分组运算和时序分析部分函数不多,但灵活性很强,对个人研究的数据处理帮助较大,可以轻松画出经典技术指标图,或者构建自己的技术指标。更多统计分析与建模,还需要其他库的支持。

阅读原文:http://suo.im/3UWOOP

转载于:https://www.cnblogs.com/csj007523/p/7424375.html

pandas 常用函数整理相关推荐

  1. python常用命令汇总-python数据分析之pandas常用命令整理

    原标题:python数据分析之pandas常用命令整理 pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的.Pandas 纳入了大量库和一些标准的数据模型 ,提供了高效地 ...

  2. python pandas 分类汇总用法_python数据分析之pandas常用命令整理

    原标题:python数据分析之pandas常用命令整理 pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的.Pandas 纳入了大量库和一些标准的数据模型 ,提供了高效地 ...

  3. pandas常用函数说明及速查表

    pandas常用函数说明及速查表 如果你用python做开发,那么几乎肯定会使用pandas库. Pandas 是 Python 语言的一个扩展程序库,用于数据分析. Pandas 是一个开放源码.B ...

  4. mysql数据库 常用函数_《MySQL数据库》常用函数整理

    原标题:<MySQL数据库>常用函数整理 以下内容,是我整理出来的比较常用的字符串函数,数值函数,日期函数. 第一类:字符串函数 1.conv(n,from_base,to_base):对 ...

  5. DL4J的矩阵处理模块ND4J的常用函数整理

    ND4J矩阵变换的常用函数整理 由本人阅读nd4j源码整理,nd4j是dl4j为了矩阵运算整出来的一套工具.对应python里的numpy,但是并没有numpy那么普及,不过至少使用dl4j搭建神经网 ...

  6. opencv常用函数整理

    opencv常用函数整理 一.常见函数整理 1.1 cv2.resize函数(图像size重定义) 1.2 cv2.getStructuringElement函数(构造卷积核) 1.3.cv2.put ...

  7. blankcount函数python,Python pandas常用函数详解

    本文研究的主要是pandas常用函数,具体介绍如下. 1 import语句 2 文件读取 df = pd.read_csv(path='file.csv') 参数:header=None 用默认列名, ...

  8. oracle有哪些常用函数,Oracle常用函数整理

    点击关注上方"SQL数据库开发", 设为"置顶或星标",第一时间送达干货 之前已经给小伙伴们整理了SQL Server和Mysql的常用函数,还没有看的可以戳下 ...

  9. 深度盘点:整理100个 Pandas 常用函数

    大家好,Pandas 是 Python 中最频繁.最受欢迎使用的模块之一,本文我将对 pandas 常用操作进行总结. 内容主要涉及:读取数据和保存数据.数据详情信息.数据处理.数据切片.筛选.排序. ...

最新文章

  1. 脑细胞膜等效神经网路12分类实例
  2. dicom文件_图像识别 | 使用Python对医学Dicom文件的预处理(含代码)
  3. 玩转iOS开发:《iOS设计模式 — 单例模式》
  4. 便携式不锈钢管道焊接机器人_核电站双相不锈钢管道的焊接工艺及焊接接头性能探讨...
  5. Hadoop入门进阶步步高(一)-环境准备
  6. sscanf的常见用法
  7. 自定义按键_雷柏VT300S号称吃鸡鼠标,能够自定义10个编程按键
  8. 在Java SE中使用Hibernate Bean Validator
  9. vb如何测试连接mysql_VB怎么连接访问Access数据库?
  10. 最低服务器协议,的WebSocket服务器最低要求
  11. 中国塑料加工机械市场趋势报告、技术动态创新及市场预测
  12. 夺命雷公狗----Git---2---基本用法
  13. 【哈佛大学:计算生物学 生物信息学】学习记录(一)
  14. 不想使用Windows自带远程桌面客户端的另外一种选择
  15. js实现数字金额转换大写及数字加千分符
  16. 确定sw1开关信号输入端口_MEMS光学器件— MEMS OXC(光交叉互连开关)
  17. 2010提升你幽默感的经典短句!
  18. 百度地图level对应距离(比例尺级别对应的多少米)
  19. 奇虎360:5年前赴美上市到今私有化退市,未来路在何方?
  20. 【05】数据可视化:02-ECharts数据可视化案例_立可得智能看板

热门文章

  1. Markdown编辑器常用功能以及快捷键介绍
  2. mybatis接口中的方法重载_MyBatis底层实现原理: 动态代理的运用
  3. 点阵字体显示系列补记:将字库文件转换成数组形式
  4. Linux下小型web服务器boa的使用
  5. 深度优先遍历和广度优先遍历_图与深度优先搜索和广度优先搜索
  6. 【Flink】 producer attempted to use a producer id which is not currently assigned to its transaction
  7. 【Flink】Flink Invalid timestamp -1 Timestamp should always be none-negative or null
  8. 【Nacos】Nacos MySQL 配置 启动报错 ould not create connection to database server. Attempted reconnect 3 time
  9. 【SpringCloud】服务降级 Hystrix DashBoard
  10. 【Jvm】jvm -XX 参数 VM 调优参数