三>. 数据分析核心包 ---pandas
1>. series介绍
a. pandas介绍 : 也是数据处理领域使用的 相对numpy,封装得更高层
---> 是一个强大的Python数据分析的工具包,是基于NumPy构建的。
b. pandas的主要功能
具备对其功能的数据结构DataFrame, Series
集成时间序列功能
提供丰富的数学运算和操作
灵活处理缺失数据
c. 安装方法: pip install pandas
d. 引用方法: import pandas as pd
e. Series 一维数据对象
Series是一种类似于一维数据的对象,由一组数据和一组与之相关的数据标签(索引)组成。
f.创建方式:
pd.Series([4,7,-5,3])
pd.Series([4,7,-5,3], index=['a','b','c','d'])
pd.Series({'a':1, 'b':2})
pd.Series(0, index=['a','b','c','d'])
g. 获取值数组和索引数组: values 属性和index属性
h. Series比较像列表(数组)和字典的结合体
i. Series- 使用特性
---> Series支持array的特性(下标):
从ndarray创建Series: Series(arr)
与标量运算: sr*2
两个Series运算: sr1+sr2
索引:sr[0], sr[[1,2,4]]
切片:sr[0:2]
通用函数:np.abs(sr)
布尔值过滤:sr[sr>0]
---> Series支持字典的特性(标签)
从字典创建Series: Series(dic)
in运算: 'a' in sr
键索引: sr['a'], sr[['a','b','d']]
2>. series整数索引问题
3>. series数据对齐
4>. series缺失值处理
5>. series小结
6>. DataFrame的创建
a. DataFrame :二维数据对象
---> 是一个表格型的数据结构,含有一组有序的列,DataFrame 可以被看做是
由Series组成的字典,并且共用一个索引。
b. 创建方式:
pd.DataFrame({'one':[1,2,3,4], 'two':[4,3,2,1]})
pd.DataFrame({'one':pd.Series([1,2,3], index=['a','b','c']),
'two':pd.Series([1,2,3,4], index=['b','a','c','d'])})
c. csv文件读取与写入
df.read_csv('filename.csv')
df.to_csv()
7>. DataFrame常用属性
8>. DataFrame索引和切片
a. DataFrame是一个二维数据类型,所以有行索引和列索引。
b. DataFrame同样可以通过标签和位置两种方法进行索引和切片。
c. loc属性和iloc属性
-->使用方法: 逗号隔开,前面是行索引,后面是列索引
-->行/列索引部分可以是常规索引,切片,布尔值索引,花式索引任意搭配。
9>. DataFrame数据对齐和缺失数据处理
10>. pandas 常用函数
11>. 时间处理对象
12>. 时间对象生成
13>. 时间序列
a. 时间序列: 就是以时间对象为索引的Series或DataFrame。
b. datetime对象作为索引时是存储在DatetimeIndex对象中的。
c. 时间序列特殊功能:
-->传入“年”或“年月”作为切片方式
-->传入日期范围作为切片方式
-->丰富的函数支持: resample(), truncate(),....
14>. 文件读取
a. 数据文件常用格式: csv(以某间隔符分割数据)
b. pandas读取文件:从文件名 URL 文件对象中加载数据
--> read_csv 默认分隔符为逗号
--> read_table 默认分隔符为制表符
15>. 文件操作3+pandas收尾