数据分析--pandas 判断数据是否连续,连续的长度

数据分析--pandas 判断数据是否连续,连续的长度

pandas 判断数据是否连续,连续的长度

在筛选数据的时候,会需要根据数据是否连续,或者连续的长度来作为筛选数据的标准。

def calculate_turning_point(series):
    """
    计算转折点
    Args:
        series: 数据列

    Returns:
        转折点的位置 从0开始,eg 0,2,9,10
    """
	mk = {i:i for i in series.unique()}
    down = ((series - series.shift()) > 0).map(lambda x: mk[x])
    group_len = [len(list(v)) for k, v in itertools.groupby(''.join(down))]
    tx = np.cumsum(group_len) - 1
    return tx

如果计算连续值的长度 用tx-tx.shift()就可以
判断连续的标准mk,可以根据自定义需求就行修改
在上面的代码中 根据数值相同来判定连续

根据前后差值判断数据是否连续

# col 是pd.Series类型的数据 根据前后差值判定是否连续
xcol = col - col.shift()
flag = xcol > th # th为阈值
calculate_turning_point(flag)
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值