Series是一维带“标签”数组(index_0 data_a)
Series基本操作类似ndarray和字典,根据索引对齐
创建
由一组数据及与之相关的数据索引组成
可使用(1·Python列表 2·标量值 3·Python字典 4·ndarray 5·其他函数)五类方法创建
• Python列表,index与列表元素个数一致
• 标量值,index表达Series类型的尺寸
• Python字典,键值对中的“键”是索引,index从字典中进行选择操作
• ndarray,索引和数据都可以通过ndarray类型创建
• 其他函数,range()函数等
a=pd.Series([9,8,7,6])
b=pd.Series([1,2,3,4],index=('a','b','c','d'))
c=pd.Series({'a':2,'b':22,'c':12})
d=pd.Series({'a':2,'b':22,'c':12},index=['c','b','s'])
print(c)
a 2
b 22
c 12
dtype: int64
print(d)
c 12.0
b 22.0
s NaN
dtype: float64
e=pd.Series(np.arange(3),index=np.arange(9,6,-1))
print(e)
9 0
8 1
7 2
dtype: int32
索引
# print(b)
# print(b.index)---->Index(['a', 'b', 'c', 'd'], dtype='object')
# print(b.values)--->[1 2 3 4]
# print(b[0])------->1
# print(b['a'])----->1
a 1
b 2
c 3
d 4
dtype: int64
隐式索引
a.iloc[],左闭右开,可以使用数字也可以使用指定的列行名称
显式索引
a.loc[],只能使用存在的行列名称
取b,c--->a.loc['b','c']
取b到d--->a.loc['b':'d']
a.['列名']['行名']
a.loc['行名']['列名']
a.loc['行名','列名']
a.values['几行','几列']
Series类型的操作类似ndarray类型:
• 索引方法相同,采用[]
• NumPy中运算和操作可用于Series类型
• 可以通过自定义索引的列表进行切片
• 可以通过自动索引进行切片,如果存在自定义索引,则一同被切片
# print(b)
# print(b[:2])
# print(b[b>b.median()])
# print(np.exp(b))
a 1
b 2
c 3
d 4
dtype: int64
a 1
b 2
dtype: int64
c 3
d 4
dtype: int64
a 2.718282
b 7.389056
c 20.085537
d 54.598150
dtype: float64
Series类型的操作类似Python字典类型:
• 通过自定义索引访问
• 保留字in操作(逻辑运算,返回True或者False)
• 使用.get()方法,存在返回索引数值,不存在返回None或者返回括号里面的指定
#Series + Series---->Series类型在运算中会自动对齐不同索引的数据
#print(b+d)
a NaN
b 222.0
c 212.0
d NaN
s NaN
dtype: float64
b.name="名字0"
b.index.name="名字1"
#print(b)
名字1
a 1
b 2
c 3
d 4
Name: 名字0, dtype: int64
#Series对象可以随时修改并即刻生效
b['a']=100
b['b','c']=200
print(b)
部分展示
a.head()--->展示a的头部几个数据
a.tail()--->展示a的尾部几个数据
空数据去除
s1=s.notnull()---->不为空时返回True
s[s1]------------->去除空数据
pandas1·——>Series(创建、索引、部分展示、去除空数据)
最新推荐文章于 2023-12-28 13:44:55 发布