方法

返回数据类型

参数

说明

Series(一维)

.Series()

Series

实例s

创建一维数据类型Series

data=None

要转化为Series的数据(也可用dict直接设置行索引) 若是标量则必须设置索引,该值会重复,来匹配索引的长度

index=None

设置行索引

dtype=None

设置数据类型(使用numpy数据类型)

name=None

设置Series的name属性

copy=False

不复制 (当data为ndarray,Series时生效,否则复制)

fastpath=False

s.values

ndarray

返回s的值

s.name

str

返回s的name(可更改)

s.index

Index

返回s的索引(可更改)

s.index.name

str

返回s的索引的name属性(可更改)

s.index.is_unique

bool

判断s的索引值是否唯一

s.dtype

np.dtype

返回s的数据类型

s.ftype

str

返回s是稀疏的还是稠密的

s.shape

tuple

返回s的形状 (n,)

s.nbytes

int

返回s的字节数

s.ndim

int

返回s的纬度数 1

s.size

int

返回s的元素数量

s.strides

tuple

返回s中数据的步幅, 即指针移动一次的字节数 (单元素字节数,)

s.itemsize

int

返回s中元素的字节数

s.base

s.T

Series

返回s的转置, 但s是一维的所以还是它本身

s.memory_usage()

int

s的内存使用情况(字节)

index=True

索引是否参与计算

deep=False

是否计算s引用的对象的内存使用情况

s.astype()

Series

转换数据类型

dtype

np.dtype

copy=True

是否复制基层数据

errors='raise'

'raise': 转换失败则报错

'ignore': 转换失败则保留原数据类型

s.copy()

Series

拷贝s

deep=True

True: 浅拷贝; False: 引用对象

s.isnull()

Series

返回一个大小相同值为bool的对象, 指示值是否为null

s.notnull()

Series

返回一个大小相同值为bool的对象, 指示值是否不为null

索引, 迭代

s.get()

返回s中对应索引的值, 若索引不存在则返回None或指定值

key

想要获取的值的索引

default=None

若索引不存在返回的值

s.at[i]

标量

基于标签的访问器

s.iat[n]

标量

基于位置的访问器

s.ix[i or n] 或 s[]

基于标签和位置的访问器, 支持.loc和.iloc中的任何输入

s.loc[i]

[i]

基于单个标签访问

[i1, i2, i3]

基于多个标签访问

[i1:i2]

返回i1与i2之间的元素(包括边界)

[[bool]]

传入bool数组, 返回True位置对应的那些值

s.iloc[n]

[n]

基于单个位置访问

[n1, n2, n3]

基于多个位置访问

[n1:n2]

类似list

[[bool]]

传入bool数组, 返回True位置对应的那些值

s.__iter__()

Iterator

返回一个基于值的迭代器

s.iteritems

Iterator

返回一个(索引, 值)的迭代器

运算

s.add()

Series

加法运算. 同s+s2

other

Series或标量

level=None

fill_value=None

使用此值填充缺失值

s.sub()

Series

减法运算. 同s-s2

s.mul()

Series

乘法运算. 同s*s2

s.div()

Series

浮点除法运算. 同s/s2

s.truediv()

Series

浮点除法运算. 同s/s2

s.floordiv()

Series

整数除法运算. 同s//s2

s.mod()

Series

取模(余)运算. 同s%s2

s.pow()

Series

幂运算. 同s**s2

s.radd()

Series

右侧加法. 同s2+s

s.rsub()

Series

右侧减法. 同s2-s

s.rmul()

Series

右侧乘法. 同s2*s

s.rdiv()

Series

右侧浮点除法. 同s2/s

s.rtruediv()

Series

右侧浮点除法. 同s2/s

s.rfloordiv()

Series

右侧整数除法. 同s2//s

s.rmod()

Series

右侧取余运算. 同s2%s

s.rpow()

Series

右侧幂运算. 同s2**s

s.lt()

Series

同 s < s2

s.gt()

Series

同 s > s2

s.le()

Series

同 s <= s2

s.ge()

Series

同 s >= s2

s.ne()

Series

同 s != s2

s.eq()

Series

同 s == s2

s.combine()

Series

使用自定义函数运算

other

Series或标量

func

传入两个参数, 返回一个参数的函数

fill_value=nan

当其中一个s缺少索引是, 使用此值填充后进行运算

s.combine_first()

Series

other

求索引的并集, 优先保留左侧的值

s.round()

Series

decimals=0

四舍五入为给定的小数位数

np.exp(s)

Series

支持大多数numpy方法

功能应用

s.apply()

Series

对s中所有值执行某一操作

func

s中每个值要执行的操作(函数)

convert_dtype=T

尝试自动适配dtype, 若为False, 则保留为dtype=object

args=()

除了值之外, 还要传递给函数的位置参数

**kwds

传递给函数的关键字参数

s.map()

Series

映射

arg

fun: 传入value返回值作为输出

dict或Series: 映射key(index)->value

na_action=None

'ignore': s中nan值将不会受到映射函数的影响

计算/描述统计

s.abs()

Series

返回所有值的绝对值

s.all()

bool

s中是否全为True(非bool值默认会转换)

s.any()

bool

s中是否存在True(非bool值默认会转换)

s.autocorr()

float

Lag-N自相关

lag=1

执行自相关之前应用的滞后数

...

重构索引 / 选择 / 标签操作

s.align()

tuple

更新索引, 并以(new_s, new_s2)的形式返回, 缺失以nan补全

other

Series

join='outer'

'outer': 新索引为s与s2的并集

'inner': 新索引为s与s2的交集

'left' : 新索引为s的索引

'right': 新索引为s2的索引

axis=None

Series不要更改此参数

level=None

copy=True

是否返回新对象

fill_value=None

缺失值使用的值, 默认np.NaN

method=None

limit=None

fill_axis=0

broadcast_ axis=None

s.drop()

Series

删除对应标签并返回新对象

labels

单一标签或list_like

axis=0

level=None

inplace=False

若为True则修改s本身而不是新生成一个对象

error='raise'

'ignore' :忽略错误

s.drop_duplicates()

Series

删除重复项

keep

'first': 仅保留第一次出现的副本(默认)

'last': 删除重复项, 但最后一项除外

False: 删除所有重复项

inplace=False

若为True则修改s本身而不是新生成一个对象

s.duplicated()

Series

返回是否是重复项的bool表示结果

keep

'first': 除第一次出现外, 标记重复为True

'last': 除了最后一次出现, 标记重复为True

False: 将所有重复项标记为True

s.equal()

bool

other

判断两个Series是否包含相同元素, 相同位置NaN被认为是相同的

s.first()

Series

基于时间偏移来获取时间序列的子集

offset

'10D': 前10天

s.last()

Series

offset

'5M': 过去5个月

s.head()

Series

n=5

返回前n行

s.idxmax()

index

skipna=True

排除NA/null值(否则返回nan)

s.idxmin()

index

skipna=True

排除NA/null值(否则返回nan)

s.isin()

Series

返回布尔Series, 显示s中每个元素是否包含在传入的序列中

values

set或list-like, 不可以是单个字符串

s.reindex()

Series

更新索引, 索引对应的值不变, 之前不存在的索引的值默认设为NaN(s的索引必须单调递增或递减)

index

新索引

method=None

None: 不填充间隙

'backfill' / 'bfill': 将比此索引排序靠后的有效值索引的值填充到此处

'pad' / 'ffill': 将比此索引排序靠前的有效值索引的值填充到此处

'nearest': 仅适用于可用于判断距离的索引, 选择离得最近的索引的值填充

copy=True

返回一个新对象, 即使传递的索引是相同的

level=None

fill_value=np.nan

缺失值填充的内容

limit=None

向前或向后填充的连续元素的最大数量(貌似索引只能是数字)

tolerance=None

原标签和新标签的最大距离(可计算距离的数据类型)

s.rename()

Series

修改Series的name或索引且产生一个新的Series(应该可以本地修改, 但尝试没有成功)

index

标量: 更改s的name

fun: 把索引传入函数, 传出值替换原索引

字典: {old_index: new_index}

copy=True