创建 Series 数据类型
print('/***********从列表创建 Series*************/')
arr=[0,1,2,3,4,5]
s1=pd.Series(arr)
print(s1)
print('/***********从 Ndarray 创建 Series**********/')
n=np.random.randn(5)#创建一个随机Ndarray数组
index=['a','b','c','d','e']
s2=pd.Series(n,index=index)
print(s2)
print('/***********从字典创建 Series*********/')
d={'a':1,'b':2,'c':3,'d':4,'e':5}
s3=pd.Series(d)
print(s3)
print('/***********修改 Series 索引*************/')
print(s1)
s1.index=['A','B','C','D','E']
print(s1)
print('/***********Series 纵向拼接**************/')
s4=s3.append(s1)
print(s4)
print('/***********Series 按指定索引删除元素**************/')
print(s4)
s4=s4.drop('e')
print(s4)
print('/***********Series 修改指定索引元素****************/')
s4['A']=6
print(s4)
print('/***********Series 按指定索引查找元素*************/')
print(s4['B'])
print('/***********Series 切片操作*************/')
#s4的前 3 个数据访问
print(s4[:3])
print('/***********Series 加法运算*************/')
#Series 的加法运算是按照索引计算,如果索引不同则填充为 NaN(空值)
print(s4.add(s3))
print('/***********Series 减法运算************/')
#Series的减法运算是按照索引对应计算,如果不同则填充为 NaN(空值)
print(s4.sub(s3))
print('/**********Series 乘法运算**************/')
#Series 的乘法运算是按照索引对应计算,如果索引不同则填充为 NaN(空值)
print(s4.mul(s3))
print('/**********Series 除法运算**************/')
#Series 的除法运算是按照索引对应计算,如果索引不同则填充为 NaN(空值)
print(s4.div(s3))
print('/**********Series 求中位数**************/')
print(s4.median())
print('/**********Series 求和**************/')
print(s4.sum())
print('/**********Series 求最大值**************/')
print(s4.max())
print('/**********Series 求最小值**************/')
print(s4.min())
print('/Series 多重索引/')
print('/************创建多重索引 Series*************/')
# 构建一个 letters = ['A', 'B', 'C'] 和 numbers = list(range(10))为索引,值为随机数的多重索引 Series
letters=['A','B','C']
numbers=list(range(10))
mi=pd.MultiIndex.from_product([letters,numbers]) # 设置多重索引
s=pd.Series(np.random.rand(30),index=mi)# 随机数
print(s)
print('/************多重索引 Series 查询*************/')
# 查询索引为 1,3,6 的值
print(s.loc[:,[1,3,6]])
print('/************多重索引 Series 切片*************/')
print(s.loc[pd.IndexSlice[:'B',5:]])