# 如何统计销售额的最大连续递增和递减天数
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[&#
【Python数据分析】案例_如何统计销售额的最大连续递增和递减天数
于 2024-07-04 17:38:24 首次发布