一. apply函数

作用:对 DataFrame 的某行/列应用函数之后,Apply 返回一些值。函数既可以使用默认的,也可以自定义。注意:在第二个输出中应用 head() 函数,因为它包含了很多行。

#创建一个新函数
def num_missing(x):
return sum(x.isnull()) #应用每一列
print "Missing values per column:"
print data.apply(num_missing, axis=0) #axis=0 defines that function is to be applied on each column #应用每一行
print "\nMissing values per row:"
print data.apply(num_missing, axis=1).head() #axis=1 defines that function is to be applied on each row

二. loc函数

作用:选择属性子集

subSalesDf=salesDf.loc[0:4,'购药时间':'销售数量']

三. rename函数

作用:列重命名

colNameDict = {'购药时间':'销售时间'}                  #将‘购药时间’改为‘销售时间’
salesDf.rename(columns = colNameDict,inplace=True)

四. dropna函数

作用:删除缺失值,how='any'意为在给定的任何一列中有缺失值就删除

salesDf=salesDf.dropna(subset=['销售时间','社保卡号'],how='any') #删除列(销售时间,社保卡号)中为空的行

五. pd.to_datetime函数

作用:字符串类型的数据转换成日期格式。传入的格式是原始数据的日期格式——format='%Y-%m-%d'固定写法:Y表示年、m表示月、d表示日。

salesDf.loc[:,'销售时间']=pd.to_datetime(salesDf.loc[:,'销售时间'],
format='%Y-%m-%d',
errors='coerce')

errors='coerce': 如果原始数据不符合日期的格式,转换后的值为空值NaT。所以转换之后我们还要运行一次删除空值的代码,因为不符合格式的日期被转变为了空值需要删除。

salesDf=salesDf.dropna(subset=['销售时间','社保卡号'],how='any')

六.  pd.sort_values

作用:对数据进行排序,by表示按那几列进行排序,ascending=True 表示升序排列,ascending=False表示降序排列

salesDf=salesDf.sort_values(by='销售时间',     #按销售日期进行升序排列
ascending=True)

七. reset_index函数

作用:生成从0到N按顺序的索引值

salesDf=salesDf.reset_index(drop=True)

八. describe函数

作用:查看数据框中所有数据每列的描述统计信息:(count:总数,mean:平均数,std:标准差,min:最小值,25%:下四分位数,50%:中位数,75%:上四分位数,max:最大值)

salesDf.describe()

九. 删除异常值

作用:假设最小值出现了小于0的情况,分析应该是记录过程中出现错误所致。

第一步:设置查询条件,这一步返回True和false

querySer=salesDf.loc[:,'销售数量']>0

第二步:应用查询条件

salesDf=salesDf.loc[querySer,:]

十. drop_duplicates函数

作用:将重复的数据删除,同一个人发生的所有消费算作一次消费,根据列名(销售时间,社区卡号),如果这两个列值同时相同,只保留1条

kpi1_Df=salesDf.drop_duplicates(
subset=['销售时间', '社保卡号']
)

十一. groupby

作用:根据某一列分组

gb=groupDf.groupby(groupDf.index.month)

对分组后的数据应用函数

mounthDf=gb.sum()

十二. 不适=使用for循环的列表生成器

作用:当一个列表中的元素是由另外一个列表中对应元素经过运算得到时,可以省去for循环,适用一行代码生成模型

x = [2,3,4,5]
out = [item*2 for item in x]
print(out)

十三. Lambda 表达式

作用:不使用def关键字,也没有return。Lambda 表达式创造的函数和普通的 def 构建的函数没什么不同,只不过函数体只有单独一个表达式而已。

double=lambda x: x*2 #double是函数名,x是参数
print(double(3))

十四. map 和 filter 函数

1. map

作用:可以与Lambda表达式同时使用,map() 函数接收一个列表,和一个函数(可以是Lambda表达式),它对列表里的每个元素调用一个函数进行处理,再将结果放进一个新列表里。

result=list(map(double,x))
print(result)

2. filter

作用:它接收一个列表,和一个规则函数,在对列表里的每个元素调用这个规则函数之后,它把所有返回值为假的元素从列表中剔除,然后返回这个过滤后的子列表。

result2=list(filter(lambda a:a>4,x))

十五. arrange 函数

作用:arange() 函数按照指定的步长返回一个等差数列。除开始和结束值之外,你还可以自定义步长和数据类型。请注意,给定的结束值参数是不会被包含在结果内的。

result= np.arange(start,stop,step)

十六. linspace 函数

作用:将给定区间进行若干等分以后的等分点组成的数列。所以你传入的参数包括开始值、结束值,以及具体多少等分。linspace() 将这个区间进行等分后,把开始值、结束值和每个等分点都放进一个 NumPy 数组里。这在做数据可视化以及绘制坐标轴的时候都很有用。

result4=np.linspace(2.0,3.0,num=5)

十七. 矩阵合并函数

1.Concat

作用:把一个或多个数据表按行(或列)的方向简单堆叠起来(看你传入的 axis 参数是 0 还是 1 咯)。

2. merge

作用:merge() 将会以用户指定的某个名字相同的列为主键进行对齐,把两个或多个数据表融合到一起。

3. join

join()和 merge() 很相似,只不过 join() 是按数据表的索引进行对齐,而不是按某一个相同的列。当某个表缺少某个索引的时候,对应的值为空(NaN)。

十八. pivot_table 函数

作用:它能帮你对一个数据表进行格式化,并输出一个像 Excel 工作表一样的表格。实际使用中,透视表将根据一个或多个键对数据进行分组统计,将函数传入参数 aggfunc 中,数据将会按你指定的函数进行统计,并将结果分配到表格中。

pivot_table(data, values=None, index=None, columns=None,aggfunc='mean', fill_value=None, margins=False, dropna=True, margins_name='All')

python中数据分析常用函数整理的更多相关文章

  1. Python 学习:常用函数整理

    整理Python中常用的函数 一,把字符串形式的list转换为list 使用ast模块中的literal_eval函数来实现,把字符串形式的list转换为Python的基础类型list from as ...

  2. python中math常用函数

    python中math的使用 import math #先导入math包 1 三角函数 print math.pi #打印pi的值 3.14159265359 print math.radians(1 ...

  3. Python中关于Lambda函数的使用总结

    lambda表达式是一种匿名函数,对应python中的自定义函数def,是定义某个函数时比较高级的一种写法.作为python初学者,本文整理了lambda的一些基本用法和特点. lambda和def的 ...

  4. 思迈特软件Smartbi:Excel数据分析常用函数汇总!

    多传统行业的数据分析师只要求掌握Excel即可,会SPSS/SAS是加分项.即使在挖掘满街走,Python不如狗的互联网数据分析界,Excel也是不可替代的. Excel是我们工作中经常使用的一种工具 ...

  5. NiosII常用函数整理

    NiosII常用函数整理 IO操作函数函数原型:IORD(BASE, REGNUM) 输入参数:BASE为寄存器的基地址,REGNUM为寄存器的偏移量函数说明:从基地址为BASE的设备中读取寄存器中偏 ...

  6. Python中的map()函数和reduce()函数的用法

    Python中的map()函数和reduce()函数的用法 这篇文章主要介绍了Python中的map()函数和reduce()函数的用法,代码基于Python2.x版本,需要的朋友可以参考下   Py ...

  7. 举例详解Python中的split()函数的使用方法

    这篇文章主要介绍了举例详解Python中的split()函数的使用方法,split()函数的使用是Python学习当中的基础知识,通常用于将字符串切片并转换为列表,需要的朋友可以参考下   函数:sp ...

  8. python中的生成器函数是如何工作的?

    以下内容基于python3.4 1. python中的普通函数是怎么运行的? 当一个python函数在执行时,它会在相应的python栈帧上运行,栈帧表示程序运行时函数调用栈中的某一帧.想要获得某个函 ...

  9. pandas 常用函数整理

    pandas常用函数整理,作为个人笔记. 仅标记函数大概用途做索引用,具体使用方式请参照pandas官方技术文档. 约定 from pandas import Series, DataFrame im ...

随机推荐

  1. .Net实现Word文档及导出

    参考网址: http://www.jb51.net/article/25062.htm(实用性) http://wenku.baidu.com/link?url=44O7Dua49DrZ-PF2QU7 ...

  2. Linux Shell常用技巧(二)

    七. grep家族:       1.  grep退出状态:    0: 表示成功:    1: 表示在所提供的文件无法找到匹配的pattern:    2: 表示参数中提供的文件不存在.    见如 ...

  3. jQuery----事件绑定之动态添加、删除table行

    在jquery中,给元素绑定事件,本文一共介绍三种方法,运用案例,针对最常用的on()方法,进行事件绑定操作. 事件绑定方法: ①$(element).bind() 参数:{ “事件名称1”:func ...

  4. 为什么企业依赖于 NoSQL

    如果你关注大数据科技动向,你对 NoSQL 一定不陌生,NoSQL 是一个分布式数据库.在过去时间,数据存储一直关系型数据库天下,有着良好的控制并发操作.事务功能.虽然RDBMS很优秀,但是随着时间的 ...

  5. 利用IPC通道进行进程间通信(C#)

    有一个解决方案,其中包括一个Windows服务和一个Windows应用程序,两者之间需要进行通信.查了下,可以使用多种方法,如Web service(适用于不同系统及跨平台情况)..NET Remot ...

  6. sqlserver 索引优化 CPU占用过高 执行分析 服务器检查

    原文:sqlserver 索引优化 CPU占用过高 执行分析 服务器检查 1. 管理公司一台服务器,上面放的东西挺多的.有一天有个哥们告诉我现在程序卡的厉害.我给他说,是时候读点优化的书了.别一天到晚 ...

  7. 北京Uber优步司机奖励政策(4月19日)

    滴快车单单2.5倍,注册地址:http://www.udache.com/ 如何注册Uber司机(全国版最新最详细注册流程)/月入2万/不用抢单:http://www.cnblogs.com/mfry ...

  8. c++ 动态数组,指针与动态内存分配

    教学内容: 内存的使用 动态内存分配malloc函数 分配内存时使用sizeof运算符 用指针访问内存 以数组的形式访问内存 一.内存的使用 堆(heap) 在程序执行期间分配内存时,内存区域中的这个 ...

  9. c#使用 HtmlAgilityPack来进行抓取和解析来获得table表格信息

    项目上要用到抓取网页,最后选用了HtmlAgilityPack来进行. 官网地址:https://html-agility-pack.net/,可以看一下 基础的: // From File var ...

  10. socket客户端和服务器端

    服务器端: #!/usr/bin/env python #-*- coding:utf-8 -*- import socket sk=socket.socket() sk.bind(('127.0.0 ...