Series定义:
类似于一维数组的对象 但是它与一维数组的区别是 它可以定义自己的显示索引
Series创建
#首先我们要先导入库
from pandas import Series
import pandas
import numpy
#三种方式创建Serise 对象
series1 = Series([1,2,3,4,5]) # 使用列表创建 是新创建一个serise对象
0 1
1 2
2 3
3 4
4 5
dtype: int64
np1 = np.random.randint(1,10,size=(4))
[3 3 2 4]
ser1 = Series(np1,index=['index1','index2','index3','index4']) # 用数组创建一个series 他是引用数组
index1 3
index2 3
index3 2
index4 4
dic = {'index1' : 3, 'index2' :3 ,'index3':2,'index':4} # 用字典创建series index
s2 = Series(dic)
访问
s2['index1'] #用显示索引访问 类似字典
3
s2.loc['index1'] # 类型显示索引访问
s2.iloc[0] # 用隐式索引访问
s2[bool_list] # 用布尔类型列表访问 和np数组基本一致
属性
形状 shape
大小 size
显示索引 index
值 values
name 可能会成为2维列表的列字段
s.head(num) # 查看数据前num个值
s.tail(num) # 后num个值
pd.isnull(s) # 空值为True
pd.notnull(s)# 有值为True
s.sort_value(ascending=False) # 值排序 默认升序
s.sort_index() # 索引排序
s.value_couts() # 计算出现次数
s.unique() # 去重
聚合
# 聚合操作与np基本一致
运算
s1 = Serise(data=np.random.randint(0,10,size=5),index=list("abcde"))
s2 = Serise(data=np.random.randint(0,10,size=4),index=list("bcde"))
# s2 无索引为a的值 所以s1加s2 a值会为NaN
s1.add(s2,fill_value=0) # 加 默认没有的值为0 保留所有的index
#聚合操作在Serise里面同样支持操作
add sub mul div # 加 减 乘 除