gpt4 book ai didi

python - 将值与 Pandas DataFrame 中的前一行进行比较

转载 作者:行者123 更新时间:2023-12-04 03:47:52 29 4
gpt4 key购买 nike

import pandas as pd
data={'col1':[1,3,3,1,2,3,2,2]}
df=pd.DataFrame(data,columns=['col1'])
print df


col1
0 1
1 3
2 3
3 1
4 2
5 3
6 2
7 2

我有以下 Pandas DataFrame,我想创建另一个列来比较 col1 的前一行,看看该行的值是否大于前一行的值。结果应该如下所示:

    col1  match  
0 1 False
1 3 False
2 3 True
3 1 False
4 2 False
5 3 True
6 2 False
7 2 True

谢谢。

最佳答案

比较偏移值 Series.gtSeries.shift ,最后一个缺失值被替换为 -1 for True,工作,如果所有值都是正数:

df['match'] = df['col1'].gt(df['col1'].shift(-1, fill_value=-1))
print (df)

col1 match
0 1 False
1 3 False
2 3 True
3 1 False
4 2 False
5 3 True
6 2 False
7 2 True

如果需要将任何 Dataframe 的最后一个值设置为 True:

df['match'] = df['col1'].gt(df['col1'].shift(-1))
df.loc[df.index[-1], 'match'] = True

关于python - 将值与 Pandas DataFrame 中的前一行进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64855369/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com