[pandas] 判断某一列是否单调递增

主要逻辑:在需要判断递增的列通过计算下一行减上一行,如果>0则递增,如果<0则非递增
例子:

import pandas as pd

pd.set_option('display.max_columns', None)  # 列全部显示
pd.set_option('display.max_rows', None)  # 行全部显示
pd.set_option('max_colwidth', 1000)  # 值显示长度;

df = pd.DataFrame({'col1': [5, 6, 2, 7, 8, 1]})
print(df)
# 计算差异
df["res"] = df['col1'].diff(periods=1).shift(-1)
print(df)
# 筛出非单调递增数据
result = df[df["res"] < 0]
print(result)

结果打印:

posted @ 2023-06-15 16:13  家有花猪  阅读(296)  评论(0)    收藏  举报