Series数据类型:有一组一维数组和索引组成
1.0 自动索引
如下代码所示:当只给定值,不给定索引的时候,系统将会自动补齐索引
>>> import pandas as pd
>>> a=pd.Series([1,2,3,4])
>>> a
0 1
1 2
2 3
3 4
dtype: int64
2.0 自定义索引
如下代码所示:给定俩组数据,前者表示值,后者表示自定义索引
>>> b=pd.Series([5,6,7,8],['a','b','c','d'])
>>> b
a 5
b 6
c 7
d 8
dtype: int64
3.0 可以用以下类型创建Series类型
- python列表
- 标量值
- python字典
- ndarray
- 其他函数
3.1 使用标量值
使用标量值的时候,索引值给定后,标量将会根据索引填充
>>> c=pd.Series(25,index=['a','b','c'])
>>> c
a 25
b 25
c 25
dtype: int64
3.2 使用字典类型
字典类型相当于键值对
>>> d=pd.Series({'a':8,'b':5})
>>> d
a 8
b 5
dtype: int64
3.3 ndarray,相当于将ndarray的值分别赋给索引和值
>>> import numpy as np
>>> e=pd.Series(np.arange(5))#还可以给定index=np.arange()给定索引
>>> e
0 0
1 1
2 2
3 3
4 4
dtype: int32
4.0 Series基本操作(类ndarray类型)
4.1 对其的索引和值进行输出及查看其类型
>>> b.index
Index(['a', 'b', 'c', 'd'], dtype='object')
>>> b.values
array([5, 6, 7, 8], dtype=int64)
4.2 使用索引查看值,可以使用自动索引,也可以使用自定义索引
>>> b['a']
5
>>> b[1]
6
>>> b[['a','b',0]] #俩种索引不能混用
a 5.0
b 6.0
0 NaN
dtype: float64
4.3 切片操作
如下代码所示:与其他的切片同理,
>>> b[:2]
a 5
b 6
dtype: int64
4.4 使用部分函数操作,如下代码所示:
>>> b[b>b.median()] #中位数函数
c 7
d 8
dtype: int64
5.0 Series基本操作(类字典类型)
5.1 字典索引:索引键
>>> b['a']
5
5.2 in 关键字
使用该关键字获取的判断是使用该值和Series中索引进行判断
>>> 8 in b
False
>>> 2 in b
False
>>> 'a' in b
True
5.3 get()函数
当存在该索引时,返回该索引对应的值,反之,返回get函数里面的参数
>>> b.get('f',36)
36
>>> b.get('a',36)
5
6.0 Series数据的运算
这是基于索引的运算,当有一方不存在该索引对应的值,则会返回NaN
>>> a=pd.Series([1,2,3],['c','d','e'])
>>> a
c 1
d 2
e 3
dtype: int64
>>> b
a 5
b 6
c 7
d 8
dtype: int64
>>> a+b
a NaN
b NaN
c 8.0
d 10.0
e NaN
dtype: float64
7.0 name属性
该属性随时修改并立即生效
>>> b.name
>>> b.name='Serise数据'
>>> b.name
'Serise数据'
>>> b.index.name='列名'
>>> b
列名
a 5
b 6
c 7
d 8
Name: Serise数据, dtype: int64
8.0 Series实质上是一维带“标签”的数组