方法
返回数据类型
参数
说明
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