pandas DataFrame - 在偏移列之间找到最大值

时间:2016-06-23 04:18:08

标签: python pandas dataframe

假设我有一个由

给出的pandas数据帧
import pandas as pd
import numpy as np

df = pd.DataFrame(np.random.randn(5,2))
df

    0           1
0   0.264053    -1.225456
1   0.805492    -1.072943
2   0.142433    -0.469905
3   0.758322    0.804881
4   -0.281493   0.602433

我想返回一个包含max(df[0,0], df[1,1]), max(df[1,0], df[2,1]), max(df[2,0], df[3,1]), max(df[3,0], df[4,1])的4行Series对象。更一般地说,比较列0和列1的最大值偏移n行的最佳方法是什么?

感谢。

1 个答案:

答案 0 :(得分:1)

您希望在移动第一列后将max应用于行。

pd.concat([df.iloc[:, 0].shift(), df.iloc[:, 1]], axis=1).apply(max, axis=1).dropna()