python 比较 Dataframe 的值并将它们存储到单独的 Dataframe 中

ie3xauqp  于 2022-12-21  发布在  Python
关注(0)|答案(2)|浏览(154)

我有以下 Dataframe ,我试图比较2行(两者之间的“高”)的时间,并将值存储到另一个 Dataframe 。
因此,基本上在新的 Dataframe 中,我希望“386.575”“383.5289”等

pes8fvy9

pes8fvy91#

您可以执行以下操作:

# Stores new data in array for dataframe
highValues = []

for i in range(0, len(df), 2):

    # Checks to see which "high" is higher
    if (df.loc[i].at["high"] > df.loc[i+1].at["high"]):
        # Appends data to array
        newDataFrame.append(df.loc[i].at["high"])

    if (df.loc[i].at["high"] < df.loc[i+1].at["high"]):
        # Appends data to array
        newDataFrame.append(df.loc[i+1].at["high"])

# Creates new pandas dataframe with array contents
newDF = pd.DataFrame(highValues)
k7fdbhmy

k7fdbhmy2#

可以使用groupby将DF分组为2行一组,然后选择'high'最大的行。索引的整数除法排列2行一组:

df2 = df.iloc[df.groupby(df.index//2)['high'].agg(pd.Series.idxmax)]

相关问题