表达式方法

方法含义
.alias(name:&str)重命名column
.floor_div(rhs: Expr)整除rhs,即只返回整数部分,丢弃小数部分。
.pow(e)指数函数,e是幂
.sqrt()平方根
.cbrt()立方根
.cos() .sin() .cot() .tan() .arccos() .arcsin() .arctan() .arctan2() .cosh() .sinh() .tanh() .arccosh() .arcsinh() .arctanh()三角函数
.degrees()弧度转成角度
.radians()角度转成弧度
.shuffle(seed: Option<u64>)随机乱序,seed随机种子。
.sample_n(n: Expr, with_replacement: bool, shuffle: bool, seed: Option<u64>) -> Expr随机采样n个元素,with_replacement=T表示有放回采样 。shuffle是否采样后乱序,seed随机种子;1
.std(ddof:u8)计算标准差,ddof是自由度2
.var(ddof:u8)计算方差,ddof是自由度偏移
.min()计算最小值,series包含nan则返回nan
.max()最大值,series包含nan则返回nan
.nan_min()忽略nan,最小值
.nan_max()忽略nan,最大值
.mean()算数均值
.median()中位数
.sum()算数和
.eq(E)条件运算==,但None==None返回Null。参见话题Null和None
.eq_missing(E)条件运算==,但None==None 返回true
.neq(E)不等于
.neq_missing(E)不等于,但None和None 认为相等
.lt(E )条件运算<
.gt(E )条件运算>
.gt_eq(E )条件运算>=
.lt_eq(E )条件运算<=
.not(E )条件运算not
.is_null()/.is_not_null()条件运算,是否是null
.drop_nulls()/.drop_nans()丢弃series中的null值或NaN值
.n_unique()统计非重复项数量
.first()返回第一个元素
.last()返回最后一个元素
.head(length:Option<usize>)开头几个元素
.tail(length:Option<usize>)结束几个元素
.implode()将Series转换成List。
.explode()将List解包
.agg_groups()返回组的索引列表,参考:agg_groups示例,Page10
.filter(predicate:E)predicate为返回bool数组的表达式
.slice(offset:Expr,length:Expr)根据offset和length描述的切片进行索引
.append(other:Expr,upcast:bool)将other的series追加self。upcast是否向上转型,自动转型到容量更大的数据类型。
.unique()去除重复值,但无法保证原有的顺序
.unique_stable去除重复值,但保留原有顺序,比.unique()更消耗资源.
.arg_unique()返回第一个唯一值索引
.arg_min()返回最小值索引
.name()返回ExprNameNameSpace,一种可以操作多个字段名的类型。
1

如果" with_replacement"为True,那么每次采样都是独立的,一个样本被选中后仍然可以在后续的采样中被选中。这被称为"有放回的抽样"。如果" with_replacement"为False,那么被选中的元素会从样本池中移除,不会被再次采样。这被称为"无放回的抽样"。

2

在统计学中,计算样本标准差时通常使用的自由度是n-1(其中n是样本大小)。这被称为贝塞尔(Bessel's)校正,用于修正偏差,使样本标准差更接近总体标准差。这是因为我们在标准差计算过程中使用了样本的平均值,这使得所有的”差值”都不是完全独立的。当ddof为1时(这是默认值),.std()方法会使用n-1作为分母来计算标准差,其中n是样本数量。如果你将ddof设置为0,.std()方法会使用n作为分母来计算标准差。但是这个值可能会低估总体标准差。