Pandas概述
Pandas是数据剖析的三大剑客之一,是Python的核心数据剖析师,它供给了快速、灵敏、清晰的数据结构,能够简略,直观,快速地处理各种类型的数据,具体介绍如下:
Pandas能够处理的数据:
1、与SQL或Excel表类似的数据
2、有序和无序(非固定频率)的时刻序列数据
3、带行、列标签的矩阵数据
4、恣意其他形式的观测、计算数据集 Pandas供给的两个首要数据结构Series(一维数组结构)和DataFrame(二维数组结构),能够处理金融,计算,社会科学,工程等范畴里的大多数典型事例,并且Pandas是根据Numpy进行开发的,能够与其他第三方科学核算库完美集成。
pandas的功能很多,具体优势如下:
1.处理浮点与非浮点数据里的缺失数据,表明为NaN
2.大小可变,例如刺进或删除DataFrame等多维目标的列
3.自动、显式数据对齐,显式地将目标与一组标签对齐,也能够疏忽标签,在Series、DataFrame核算时自动与数据对齐
4.强壮、灵敏的分组计算(groupby)功能,即数据聚合、数据转换
5.把Python和NumPy数据结构里不规则、不同索引的数据轻松地转换为DataFrame目标
6.智能标签,对大型数据集进行切片、花式索引、子集分化等操作
7.直观地兼并(merge)、衔接(join)数据集
8.灵敏地重塑(reshape)、透视(pivot)数据集
9.老练的导入、导出工具,导入文本文件(CSV等支持分隔符的文件)、Excel文件、数据库等来源的数据,导出Excel文件、文本文件等,利用超快的HDF5格式保存或加载数据
10.时刻序列;支持日期范围生成、频率转换、移动窗口计算、移动窗口线性回归、日期位移等时刻序列共功能
Series
Pandas是Python数据剖析重要的库,而Series和DataFrame是Pandas库中两个重要的目标,也是Pandas中两个重要的数据结构。
图解Series
Series是Python的Pandas库中的一种数据结构,它类似一维数组,由一组数据以及这组数据相关的标签(索引)组成,或许仅有一组数据或许仅有一组数据没有索引也能够创立一个简略的Series目标,Series能够存储整数,浮点数,字符串,Python目标等多种类型的数据。
Series目标的创立
创立Series目标首要运用Pandas中的Series()办法,语法如下:
import pandas as pd
s=pd.Series(data,index=index)
s=pd.Series([100,90,80])
print(s,type(s))
输出成果:
参数阐明: data:表明数据,支持Python字典、多维数组、标量值(即只要大小,没有方向的量。也就是说,仅仅一个数值,如s=pd.Series(5))。
index:表明行标签(索引),不写的话默许从0开端。
返回值:Series目标。
Series的索引
Series方位索引
方位索引是从0开端的 [0]是Series的榜首个数,[1]是Series的第二个数,以此类推。默许用到的就是方位索引。
留意点: Series目标不能用[-1]定位索引。
s1 = pd.Series([100,90,80])
print(s1[2])
Series标签索引
Series标签索引与方位索引办法类似,用[]表明,里面是索引称号,留意index的数据类型是字符串,如果需求获取多个标签索引值,用[[]]表明(相当于[]中包括一个列表)
s2 = pd.Series([110,119,120],index=['a','b','c'])
print(s2)
print(s2['a'])
print(s2[['a','c']])
Series切片索引
- 用
标签索引
做切片,包头包尾
(即包括索引开端方位的数据,也包括索引借宿方位的数据) - 用
方位索引
做切片,包头不包尾
(即包括索引开端方位的数据,不包括索引借宿方位的数据)
import pandas as pd
s2 = pd.Series([110,119,120],index=['a','b','c'])
print(s2)
# 运用标签索引切片
print(s2['b':'c'])
print('------')
# 运用方位索引切片
s4 = pd.Series([110,119,120])
print(s4[1:2])
获取Series的索引和值
import pandas as pd
s2 = pd.Series([110,119,120],index=['a','b','c'])
print(s2.index)
print('------')
for i in s2.index:
print(i)
print('------')
print(s2.values)
print('------')
for i in s2.values:
print(i)
输出成果: