Python之Pandas中Series、DataFrame实践

1. pandas的数据结构Series

1.1 Series是一种类似于一维数组的对象,它由一组数据(各种NumPy数据类型)以及一组与之相关的数据标签(即索引)组成。
1.2 Series的字符串表现形式为:索引在左边,值在右边。

2. pandas的数据结构DataFrame是一个表格型的数据结构,它含有一组有序的列,每列可以是不同的值类型(数值、字符串、布尔值的)。

dataframe中的数据是以一个或者多个二位块存放的(而不是列表、字典或者别的一维数据结构)。

3.索引对象

pandas的索引对象负责管理轴标签和其他元素(比如轴名称等)。构建Series或DataFrame时,所用到的任何数组或其他序列的标签都会被转换成一个Index。
Index对象是不可修改的。

4. pandas的主要Index对象

Index       最泛化的Index对象,将轴标签表示为一个由Python对象组成的NumPy数组
Int64Index 针对整数的特殊Index
MultiIndex “层次化”索引对象,表示单个轴上的多层索引。可以看做由元数组组成的数组
DatetimeIndex 存储纳秒级时间戳(用NumPy的datetime64类型表示)
PeriodIndex 针对Period数据(时间间隔)的特殊Index

5. 操作Series和DataFrame中的数据的基本手段

5.1 重新索引 reindex
5.2 丢弃指定轴上的项 drop
5.3 索引、选取和过滤(.ix)
5.4 算数运算和数据对齐
DataFrame和Series之间的算数运算默认情况下会将Series的索引项 匹配到DataFrame的列,然后沿着行一直向下广播。(如果希望匹配行且在列上广播,则必须使用算数运算方法)

6. 函数应用和映射

NumPy的ufuncs(元素级数组方法)也可用操作pandas对象
DataFrame中将函数应用到由各列或各行所行成的一维数组上可用apply方法。

7. 排序和排名

要对行或列索引进行排序(按字典顺序),可使用sort_index方法,它将返回一个已排序的新对象;对于DataFrame,则可以根据任意一个轴上的索引进行排序。

8. 汇总和计算描述统计

8.1 相关系数corr与协方差cov
8.2 成员资格isin,用于判断矢量化集合的成员资格,可用于选取Series或DataFrame列数据的子集。

9. 处理缺失数据(Missing data)

9.1 pandas使用浮点值NaN(Not a Number)表示浮点和非浮点数组中的缺失数据。
9.2 NA处理办法
dropna 根据各标签值中是否存在缺失数据对轴标签进行过滤,可通过阀值调节对缺失值的容忍度
fillna 用指定的或插值方法(如ffil或bfill)填充缺失数据
isnull 返回一个含有布尔值的对象,这些布尔值表示哪些值是缺失值/NA,该对象的类型与源类型一样
notnull isnull的否定式

10. 层次化索引

层次化索引(hierarchical indexing)是pandas的一项重要功能,它使你能在一个轴上拥有多个(两个以上)索引级别。抽象点说,它是你能以低维度形式处

最新文章

  1. 一个未解决的samba问题
  2. dos2unix用法
  3. [家里蹲大学数学杂志]第049期2011年广州偏微分方程暑期班试题---随机PDE-可压NS-几何
  4. WEB系统启动时加载Log4j的配置文件
  5. nodejs初学————安装篇(iis8.5+windows8.1)
  6. JS的运行机制
  7. hdu 1806 rmq
  8. xcode6 devices,profiles 以及 iOS8 设备 查看profiles
  9. visio画UML用例图没有include关系的解决方法
  10. Android下HelloWorld项目的R.java文件介绍
  11. Session与Cookie间不得不说的一些事
  12. Using SetWindowRgn
  13. 从今天开始学习Java了
  14. 浙江省新高中信息技术教材,将围绕Python进行并增加编程相关知识点
  15. vmvare centos 7.0 root密码忘记后重置及总结
  16. 初学MySQL基础知识笔记--01
  17. mapdb的一些性能测试
  18. Golang入门教程(七)基本数据类型使用案例
  19. NumPy:数组计算
  20. poj3276 Face The Right Way(反转问题,好题)

热门文章

  1. Erlang/OTP:基于Behaviour的回调函数
  2. Java 静态代理和动态代理例子
  3. ssh结合tar命令把远程文件拉回来或推过去(实现数据无落地推送)
  4. 一步步实现 easyui datagrid表格宽度自适应,效果非常好
  5. Hibernate hql 多表查询
  6. 不用登陆密码也能进路由器,适用于TP、磊科、腾达
  7. hibernate 解决并发问题
  8. scikit Flow ,tensor flow 做ml模型
  9. mahout版本兼容问题
  10. jps command not found已解决