如何循环数据框列以迭代地对数据框进行排序

问题描述 投票:0回答:1

我需要针对所有列,根据不同的列对我的数据框进行排序,我想通过循环来实现。所以我需要类似的东西:

for j in range(nC):

    Elab1 = Elab1.sort_values([j, 13])
    Elab1 = Elab1.reset_index(drop=True)


    for i in range(L_GI-1):


        if Elab1.at[i+1, j] == Elab1.at[i, j] :


            Elab1.at[i+1, j+nC] = Elab1.at[i, j+nC] 

[L_GInC分别是我的数据框的行数和列数:Elab1,而j和13是我想用作排序索引的数据框的列数。

虽然这适用于循环行,但不适用于列,因为我猜想使用方法at时我需要它们的名称。是否有一种方法可以替代方法at,如我的代码所示使用?

python loops sorting dataframe
1个回答
0
投票

只需使用iloc而不是at

Elab1.iloc[i+1, j] == Elab1.iloc[i,j]
© www.soinside.com 2019 - 2024. All rights reserved.