【第三章】ipython

C-a 到行首

C-e 到行尾

%timeit 测量语句时间,%time是一次,%timeit是多次。

%pdb是自动调试的开关。

%debug中,可以用b 12在第12行设置断点,n是执行当前行并进入下一行,

set_trace和debug函数也比较好用。 from IPython.core.debugger import Pdb

逐行分析函数性能:基于line_profiler的应用!在~/.ipython/profile_default/ipython_config.py 中添加 c.TerminalIPythonApp.extensions = ['line_profiler']

即可使用魔法命令%lprun 逐行分析函数的性能,调用语法为

%lprun -f func1 -f func2 statement_to_profile

【第四章】numpy

切片赋值可以用矢量或者标量,标量采用了广播机制。

布尔索引!True False可以用来切片,也可以和其他切片方式混用。两个布尔索引可以对应的,比如df[con1] = df2[con]是成立的。

df[:2][1:] = np.nan也是原数据上修改。

花式索引就是df[[2,3,4,1], :]这种,花式索引每次都是复制新数据!两维都花式索引比较难,需要df[[0,1]][:, [0,1]]这样,或者df[df.ix_([0,1],[0,1])]

np.where是x if con else y的矢量化版本。np.where(con=TrueFalseArray, x, y)。x, y可以是与con一样size的矢量,也可以是标量

和&,或|,非-(负号)。

np.sort返回已排序副本,就地排序会修改数组本身

arr.unique()与sorted(set())输出相似, in1d(target, base)测试成员资格,unique(x), intersect1d(x, y), ...这些都是集合运算

【第五章】pandas

有特殊的Index类,index对象不可修改,有 is_monotonic 和 is_unique 方法 。series.reindex(index)根据新的index进行重排

apply方法(输入某个函数),按照行或者按照列进行计算

默认排除na值,使用skipna=False禁用

reindex和set_index,

【第六章】数据加载

对于没有列名的csv, 两个方法header=None, names=[]

其中一列当作index, names=[xx, 'message',xx, xx, xx], index_col='message'

【第七章】数据规整化:清理、转换、合并、重塑\

pd.merge 根据一个或者多个键连接record

  如果两边键相同,通过on指定,如果键不同,通过left_on, right_on指定。

  通过how可以指定连接方式,默认是交集inner,可以选择left, right, outer  

combine_first: 填补缺失数据的方法

【第九章】数据聚合与分组运算

groupby是一种分组运算的方法,包含三个步骤:拆分-应用-合并

1、拆分:按照某个键将数据分类:data.groupby(key)

2、应用、合并:将某个函数应用并且计算grp.mean(), grp.agg(func)

【第十章】时间序列

按天group

df.index = pd.to_datetime(df.index)

df.groupby(pd.TimeGrouper('D'))

取每天的同一时间

df.loc[datetime.time(9, 30)]

按每天的同一时间group

data.groupby(data.index.time)

【python】《利用python进行数据分析》笔记的更多相关文章

  1. Python笔记之不可不练

    如果您已经有了一定的Python编程基础,那么本文就是为您的编程能力锦上添花,如果您刚刚开始对Python有一点点兴趣,不怕,Python的重点基础知识已经总结在博文<Python笔记之不可不知 ...

  2. boost.python笔记

    boost.python笔记 标签: boost.python,python, C++ 简介 Boost.python是什么? 它是boost库的一部分,随boost一起安装,用来实现C++和Pyth ...

  3. 20.Python笔记之SqlAlchemy使用

    Date:2016-03-27 Title:20.Python笔记之SqlAlchemy使用 Tags:python Category:Python 作者:刘耀 博客:www.liuyao.me 一. ...

  4. Python笔记——类定义

    Python笔记——类定义 一.类定义: class <类名>: <语句> 类实例化后,可以使用其属性,实际上,创建一个类之后,可以通过类名访问其属性 如果直接使用类名修改其属 ...

  5. 13.python笔记之pyyaml模块

    Date:2016-03-25 Title:13.Python笔记之Pyymal模块使用 Tags:Python Category:Python 博客地址:www.liuyao.me 作者:刘耀 YA ...

  6. 8.python笔记之面向对象基础

    title: 8.Python笔记之面向对象基础 date: 2016-02-21 15:10:35 tags: Python categories: Python --- 面向对象思维导图 (来自1 ...

  7. python笔记 - day8

    python笔记 - day8 参考: http://www.cnblogs.com/wupeiqi/p/4766801.html http://www.cnblogs.com/wupeiqi/art ...

  8. python笔记 - day7-1 之面向对象编程

    python笔记 - day7-1 之面向对象编程 什么时候用面向对象: 多个函数的参数相同: 当某一些函数具有相同参数时,可以使用面向对象的方式,将参数值一次性的封装到对象,以后去对象中取值即可: ...

  9. python笔记 - day7

    python笔记 - day7 参考: http://www.cnblogs.com/wupeiqi/articles/5501365.html 面向对象,初级篇: http://www.cnblog ...

  10. python笔记 - day6

    python笔记 - day6 参考: http://www.cnblogs.com/wupeiqi/articles/5501365.html 大纲: 利用递归,实现阶乘: Python反射 pyt ...

随机推荐

  1. Python基础-面向对象2

    一.成员修饰符 共有成员 私有成员:创建方式在成员之前加两个下划线,私有成员无法直接访问,只能间接访问 子类不能继承父类的私有属相私有普通字段的访问方式: class Fansik: def __in ...

  2. (转载)处理SQL解析失败导致share pool 的争用

    通过关联x$kglcursorx$kglcursor_child_sqlid视图: 通过使用Oracle10035Event事件可以找到解析失败的SQL: 通过oraclesystemdump也可以找 ...

  3. c# 图片加密解密的实例代码

    c# 图片加密解密的实例代码. 代码: using System; using System.Collections.Generic; using System.Text; using System. ...

  4. Python(函数式编程)

    函数是Python内建支持的一种封装,我们通过把大段代码拆成函数,通过一层一层的函数调用,就可以把复杂任务分解成简单的任务,这种分解可以称之为面向过程的程序设计.函数就是面向过程的程序设计的基本单元. ...

  5. Java集合(6):TreeSet

    一.TreeSet介绍 与HashSet是基于HashMap实现一样,TreeSet是基于TreeMap实现的.TreeSet是一个有序集合,TreeSet中的元素将按照升序排列,缺省是按照自然排序进 ...

  6. 10 Spring框架 AOP (三) Spring对AspectJ的整合

    上两节我们讲了Spring对AOP的实现,但是在我们的开发中我们不太使用Spring自身的对AOP的实现,而是使用AspectJ,AspectJ是一个面向切面的框架,它扩展了Java语言.Aspect ...

  7. python报错 TypeError: string indices must be integers

    所以在读取字典的时候,最好先判断类型,然后再查看它是否已经有这样的属性: type(mydict) == type({})             #检查不是字典 如果是字典,再看看有没有这样的属性: ...

  8. hadoop16---反射

    框架配置文件中,从字符串获取类和实例,调他的方法. 通过反射的方式可以获取class对象中的属性.方法.构造函数等,一下是实例: package cn.itcast_04_reflect; impor ...

  9. 20162326 齐力锋 2017-2018学期 Bag类的补写博客

    要求: 代码运行在命令行中,路径要体现学号信息,IDEA中,伪代码要体现个人学号信息 参见Bag的UML图,用Java继承BagInterface实现泛型类Bag,并对方法进行单元测试(JUnit), ...

  10. PHP练习题一

    目录:1.如何使用php导入导出csv?2.php接收POST数据的方式有哪些?3.如何让json_encode()不转义斜杠?我在做服务器返回一些数据时需要返回一些地址,但是默认的json_code ...