pandas 检查该值是否小于或等于它前面的值

chhkpiq4  于 2023-03-16  发布在  其他
关注(0)|答案(1)|浏览(166)

我有一个由20个数字组成的数据集,我试图创建一个if语句,如果数字小于或等于它前面的数字,则停止并取平均值,然后继续该过程,直到它到达数据集的末尾。

2
3
4
5
5
6
7
8
8

我要打印出来:三、五、七

for i in range(len(df)):
    if (df.loc[i, 'list1'] <= df.loc[i, 'list1' - 1]):

       res = []
       res.append(sum(df["list1"]   [i:i+len(df['list1'])]) / len(df['list1']))
dwbf0jvd

dwbf0jvd1#

试试这个:

df = pd.read_clipboard(header=None, names=['values'])

df['grp'] = (df['values'].diff() == 0).cumsum()

df.drop_duplicates('values', keep='first').groupby('grp').mean()

输出:

values
grp        
0       3.5
1       7.0

相关问题