【Python数据分析】案例_如何统计销售额的最大连续递增和递减天数

# 如何统计销售额的最大连续递增和递减天数
import numpy as np
import pandas as pd
# 生成数据
sail = pd.DataFrame(np.random.randint(50,150,size=1000),index = pd.date_range('2030-01-01',periods=1000),columns=['销售额'])
print(sail)
print("\n")
# 数据转变,True表示销售增加,False表示销售减少或不变
res = sail.diff().dropna()['销售额'].map(lambda x:True if x > 0 else False).to_frame(name = '销售递增')
# diff()相邻数据的差值,如果想隔n个数据,diff(n)
# 数据合并
df2 = pd.concat([sail,res],axis = 1)
# 空数据删除
df2.dropna(inplace=True)
#inplace:如果设置 True,将计算得到的值直接覆盖之前的值并返回 None,修改的是源数据。默认False
# 数据错位
# shift默认向下移动一位,实现错位
# 比较错位前和错位后数据
df2['错位'] = df2['销售递增'].shift()
# 错位比较
# True表示1,False表示0
df2['错位比较'] = df2['销售递增'].ne(df2['错位'])
# ne判断不相等,如果不相等返回True,否则返回False
# 如果是相同的数字,表示没有变换
# 数字变化了,表示销售递增状态发生了改变
df2['错位累加'] = df2[&#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值