import pandas as pd
from pandas import Series, DataFrame
# Series是一种类似于一维数组的对象,它由一组数据(各种NumPy数据类型)以及一组与之相关的数据标签(即索引)组成
# 实例化一个Series对象
obj01 = pd.Series([2,4,6,8])
# 打印出来,可以看到默认索引是0——N-1
# 索引在左边,值在右边
print(obj01)
# 通过Series 的values和index属性获取其数组表示形式和索引对象
# 打印所有对象值列表
print(obj01.values)
# 通过索引获取Series对象的索引对象值
# 打印出索引和对象值
print(obj01[[0,1,3]])
# 打印对象值列表
print(obj01[[0,1,3]].values)
# 所创建的Series带有一个可以对各个数据点进行标记的索引
obj02 = pd.Series([4, 7, -5, 3], index=['d', 'b', 'a', 'c'])
print(obj02.values)
# 使用NumPy函数或类似NumPy的运算
# (如根据布尔型数组进行过滤、标量乘法、应用数学函数等)都会保留索引值的链接
print(obj02[obj02 > 2])
print(obj02*2)
# 可以将Series看成是一个定长的有序字典,因为它是索引值到数据值的一个映射
print('b' in obj02)
# True
# 通过python 字典来创建Series
sdata = {'Ohio': 35000, 'Texas': 71000, 'Oregon': 16000, 'Utah': 5000}
obj03 = pd.Series(sdata)
print(obj03)
# Series中的索引就是原字典的键(有序排列)
# 可以传入排好序的字典的键以改变顺序
states = ['California', 'Ohio', 'Oregon', 'Texas']
obj04 = pd.Series(sdata, index=states)
print(obj04)
# pandas的isnull和notnull函数可用于检测缺失数据
print(pd.isnull(obj04))
print(pd.notnull(obj04))
# Series也有类似的实例方法
print(obj04.isnull())
print(obj04.notnull())
print(obj04)
# Series对象本身及其索引都有一个name属性
obj04.name = 'population'
obj04.index.name = 'state'
print(obj04)
# Series的索引可以通过赋值的方式就地修改
obj04.index = ['Bob', 'Steve', 'Jeff', 'Ryan']
《利用Python进行数据分析·第2版》第5章 pandas入门