作者: 艾文,计算机硕士学位,企业内训讲师和金牌面试官,公司资深算法专家,现就职BAT一线大厂。
内容:跟艾文学编程《零基础入门学Python》
学习目标
- Series 和 DataFrame
- 索引对象
- 时间序列
- 类型属性分析
pandas 介绍
pandas是一个Python语言的软件包,在我们使用Python语言进行机器学习编程的时候,这是一个非常常用的基础编程库。本文是对它的一个入门教程。
pandas提供了快速,灵活和富有表现力的数据结构,目的是使“关系”或“标记”数据的工作既简单又直观。它旨在成为在Python中进行实际数据分析的高级构建块。
pandas最核心的就是Series和DataFrame两个数据结构。
这两种类型的数据结构对比如下:
- Series 1维 带有标签的同构类型数组
- DataFrame 2维 表格结构,带有标签,大小可变,且可以包含异构的数据列
DataFrame可以看做是Series的容器,即:一个DataFrame中可以包含若干个Series。
Series
一维的数据结构,数组与字典的组合,有序,但是可以使用非数字下标进行访问
创建Series
- 输入的最后一行: 数据的类型,默认数组int64
- 数据在第二列输出
- 第一列数据索引,在pandas 中index
创建Series 指定index列
创建Series使用dict类型数据
DataFrame
DataFrame:表格,并包含拍好序的列。 也可以简单理解Excel 表格
每列都有不同的数值类型(数字,字符串,布尔)。
DataFrame 有行索引(row index) 和 列索引(col index)
构建DataFrame
通过数据dict 类型,来创建一个DataFrame
DataFrame 自动按照列排序
DataFrame 简单操作
- 如果在已经有的DataFrame 插入一个新字段.不存在的字段(没有该字段对应数据,数据NAN)
- 获取DataFrame 的列
- 获取DataFrame 的某一列/多列
- 取DataFrame 的行数据
Index Ojbects(索引对象)
时间序列
时间序列指能在任何能在时间上观测到的数据。很多时间序列是有固定频率(fixed frequency)的,意思是数据点会遵照某种规律定期出现,比如每15秒,每5分钟,或每个月。时间序列也可能是不规律的(irregular),没有一个固定的时间规律。如何参照时间序列数据取决于我们要做什么样的应用,我们可能会遇到下面这些:
Timestamps(时间戳),具体的某一个时刻
Fixed periods(固定的时期),比如2007年的一月,或者2010年整整一年
Intervals of time(时间间隔),通常有一个开始和结束的时间戳。Periods(时期)可能被看做是Intervals(间隔)的一种特殊形式
Experiment or elapsed time(实验或经过的时间);每一个时间戳都是看做是一个特定的开始时间(例如,在放入烤箱后,曲奇饼的直径在每一秒的变化程度)1.5.1 日期和时间的数据类型
python 标准包表示时间和日期数据。
- datetime
- time
- calendar
字符串与时间转化
- 日期类型格式化
- pandas 中to_datetime 方法解析很多不同种类的日期表示
- date_range 生成按照日频读的时间戳
类别数据
类别行数据基本操作
有重复部分。我们可以unique和value_counts,从一个数组提取不同的数值,并计算频度
- 不同单词个数
- 每个类别出现次数
DataFrame 分析类型数据
- 查看每个字段类型
- 类别型字符串转化类别对象
让我们一起加油
标签:数据分析,Python,Series,DataFrame,时间,数据,pandas From: https://blog.51cto.com/u_14361901/6128375