[读书笔记] Python数据分析 (五) pandas入门
pandas: 基于Numpy构建的数据分析库
pandas数据结构:Series, DataFrame
Series: 带有数据标签的类一维数组对象(也可看成字典)
values, index
缺失数据检测:pd.isnull(), pd.notnull(), Series对象的实例方法
Series对象本身及其索引都有一个name属性,和pandas其他关键功能关系很密切
DataFrame: 表格型数据结构,列和行都有索引
获取DataFrame列:字典标记方式,或者属性方式(frame2['state']/frame2.state)
获取DataFrame行:ix()方法
通过索引方式返回的列只是相应的数据视图,而不是副本,Series的Copy方法可以显示地复制列

DataFrame的index和column也有name属性,可以自己设置
索引对象:pandas索引对象负责管理轴标签和其他元数据,构建Series或者DataFrame时,所用到的任何数组或者其他序列的标签会被转换成一个Index. Index对象是不可以修改(immutable)的.

Index属性

基本功能
重新索引:创建一个适合新索引的对象reindex()

指定丢弃对象:drop()
索引选取和过滤:ix()

算术运算和数据对齐
pandas可以对不同索引对象进行算术运算,对不重叠值自动填充NA
在算术方法中填充值:fill_value
DataFrame和Series之间的运算:broadcast()
默认情况下DataFrame和Series之间的算术运算会将Series的索引匹配到DataFrame列,然后沿着行向下传播;如果想匹配行且在列上广播,必须使用算术运算方法
函数应用和映射
numpy的ufuncs(元素级数组方法),也可以用于操作pandas对象
DataFrame的apply()方法,可以将函数应用到行或者列形成的一维数组
排序和排名
排序:
sort_index() 对行或者列的索引排序(按照字典顺序)
sort_index(by = ) 按照一个或者多个列中值进行排序
Series按值进行排序, order方法
排名:
rank()
带有重复值的轴索引
索引的is_unique()属性可以告诉你它的值是否是唯一的
汇总和计算描述性统计
sum()
mean()
describe()

描述和汇总统计函数

相关系数和协方差
对参数对进行计算得到,Series和DataFrame方法
唯一值,值计数,以及成员资格
唯一值:unique()方法
值计数:value_counts()方法计算一个Series中各个值出现的频率
成员资格:isin, 用于判断矢量化集合的成员资格,可以选取Series或DataFrame列中数据的子集

处理缺失数据

过滤缺失数据:dropna
对于DataFrame对象,dropna默认丢弃任何含有缺失值的行; dropna(how = 'all') 丢弃全为NA那些行.
如果是针对列,传入axis = 1便可
填充缺失数据:fillna
传入常数值:所有na被替换为常数值
传入字典:不同的列填充不同的值
默认返回新的对象,但是也可以就地修改 inplace = TRUE

层次化索引:数据重塑和基于分组的操作(透视表)
stack和unstack
对DataFrame来说,每条轴都可以有分层索引.
根据级别进行汇总:DataFrame和Series的描述和汇总统计都用一个level选项.
使用列作为行索引,将行索引变为DataFrame的列:set_index() 相反reset_index()
[读书笔记] Python数据分析 (五) pandas入门的更多相关文章
- Python数据分析之pandas入门
一.pandas库简介 pandas是一个专门用于数据分析的开源Python库,目前很多使用Python分析数据的专业人员都将pandas作为基础工具来使用.pandas是以Numpy作为基础来设计开 ...
- [读书笔记] Python数据分析 (二) 引言
1. 数据分析的任务:数据读写,数据准备(清洗,修整,规范化,重塑,切片切块,变形),转换,建模计算,呈现(模型/数据) 2. 数据集: bit.ly的1.usa.gov数据:URL缩短服务bit ...
- [读书笔记] Python数据分析 (一) 准备工作
1. python中数据结构:矩阵,数组,数据框,通过关键列相互联系的多个表(SQL主键,外键),时间序列 2. python 解释型语言,程序员时间和CPU时间衡量,高频交易系统 3. 全局解释器锁 ...
- [读书笔记] Python数据分析 (三) IPython
1. 什么是IPython IPyhton 本身没有提供任何的计算或者数据分析功能,在交互式计算和软件开发者两个方面最大化地提高生产力,execute-explore instead of edit- ...
- [读书笔记] Python数据分析 (四) 数组和矢量计算
Numpy:高性能计算和数学分析的基础包 ndarray, 一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组 用于对数组数据进行快速运算的标准数学函数 用于读写磁盘数据的工具和用于操作内存 ...
- [读书笔记] Python 数据分析 (十一)经济和金融数据应用
resample: 重采样函数,可以按照时间来提高或者降低采样频率,fill_method可以使用不同的填充方式. pandas.data_range 的freq参数枚举: Alias Descrip ...
- [读书笔记] Python 数据分析 (八)画图和数据可视化
ipython3 --pyplot pyplot: matplotlib 画图的交互使用环境
- [读书笔记] Python 数据分析 (十二)高级NumPy
da array: 一个快速而灵活的同构多维大数据集容器,可以利用这种数组对整块的数据进行一些数学运算 数据指针,系统内存的一部分 数据类型 data type/dtype 指示数据大小的元组 str ...
- Python 数据处理库 pandas 入门教程
Python 数据处理库 pandas 入门教程2018/04/17 · 工具与框架 · Pandas, Python 原文出处: 强波的技术博客 pandas是一个Python语言的软件包,在我们使 ...
随机推荐
- 【JavaScript框架封装】在实现一个自己定义类似于JQuery的append()函数的时候遇到的问题及解决方案
主要问题: 在刚开始创建了这个函数之后,使用的时候,总是会出现一个问题,就是按照正常步骤给一个ID选择器添加子节点的时候正常,但是到了给一个class选择器的元素添加的时候始终只能添加一个. 下面是我 ...
- nyoj125-盗梦空间
盗梦空间 时间限制:3000 ms | 内存限制:65535 KB 难度:2 描述 <盗梦空间>是一部精彩的影片,在这部电影里,Cobb等人可以进入梦境之中,梦境里的时间会比现实中的时 ...
- 在 vue-test-utils 中 mock 全局对象
vue-test-utils 提供了一种 mock 掉 Vue.prototype 的简单方式,不但对测试用例适用,也可以为所有测试设置默认的 mock. mocks 加载选项 mocks 加载选项 ...
- CodeForcesGym 100641D Generalized Roman Numerals
Generalized Roman Numerals Time Limit: 5000ms Memory Limit: 262144KB This problem will be judged on ...
- Oracle中Cursor介绍和使用
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/MyDreamNeverstop/article/details/78604033 一 概念 游标 ...
- plsql里面执行正常,java运行报ORA-01722: 无效数字
贴代码: <select id="getInfo" parameterClass="java.util.HashMap" resultClass=&quo ...
- 怎样改动 VC6.0 4.0 2010 打印预览界面上的文字
前言:尽管早已下决心不再碰微软的东西,但手头的项目还得须要维护. 遇到问题还能解决. 问题由来: 之前的软件开发是基于中文环境开发的,建立项目的时候,选择了中文,为了方便客户使用.我们使用了静态编译的 ...
- unix关于打包命令zip的使用
unix zip命令的基本使用方法是: zip [參数] [打包后的文件名称] [打包的文件夹路径] linux zip命令參数列表: -a 将文件转成ASCII模式 -F 尝试修复损坏的压缩文件 - ...
- Spring Data MongoDB 五:进阶文档查询(分页、Morphia)(二)
Spring Data MongoDB 三:基本文档查询(Query.BasicQuery)(一) 学习MongoDB 六: MongoDB查询(游标操作.游标信息)(三) 一.简单介绍 Spring ...
- [C++设计模式]observer 观察者模式
有这么一种松耦合的需求: 有一些类的对象对类A对象的状态变化非常感兴趣,不会改变类A的对象,也不会被类A的对象改变,想以一种较小的代价观察对类A对象状态变化. 以下的几种方式也能实现上述目的 (1)通 ...