从熊猫数据框的条件循环中选择一列

时间:2021-03-24 23:38:54

标签: python pandas dataframe

我有一个五行三列的熊猫数据框。我想创建一个函数,其中我的代码返回最后一行大于第一行的列。在我的代码示例中,我希望它生成一个列名为“Temp01”的列表。在创建 if / else 以检查最后一行比第一行长的列时,我摸索了。下面是我的代码:

#Import pandas package
import pandas as pd

#Create Dataframe
df0 = pd.DataFrame({'Temp01':[10,20,30,40,15],'Temp02':[50,60,70,70,45],'Temp03':[80,90,100,100,75]})

#empty list with column names
test =[]

for column in df0.columns: 
#df0.column[-1] - Last row of each dataframe column
#df0.column[0] - First row of each dataframe column

  if df0.column[-1]> df0.column[0]:
    text = column
    test.append(text)
  else:
    pass
print(test)

2 个答案:

答案 0 :(得分:1)

import pandas as pd

#Create Dataframe
df0 = pd.DataFrame({'Temp01':[10,20,30,40,15],'Temp02':[50,60,70,70,45],'Temp03':[80,90,100,100,75]})

lst=[]

for col_name in df0.columns:
    if df0[col_name].iloc[-1]>df0[col_name].iloc[0]:
        lst.append(col_name)
print(lst)

答案 1 :(得分:1)

m = (df0.tail(1).values > df0.head(1).values)[0]
print(df0.columns[m].values)

打印:

['Temp01']