首页 > 解决方案 > 按标签同时索引行和列

问题描述

我想以元组的形式获取两个或多个不同列的值

def top():
    Top15 = answer_one()
    x = Top15.loc[Top15['% Renewable'].idxmax()]
    return x.loc['% Renewable' , 'Country']

我想以元组的形式获取名为 % Renewable 和 Country 的列的值

标签: pythonpandas

解决方案


pd.DataFrame.loc支持同时按行和列标签索引:

df = pd.DataFrame({'A': [1, 2], 'B': [3, 4]})

res = tuple(df.loc[df['A'].idxmax(), ['A', 'B']])    # (2, 4)

或者如果list足够:

res = df.loc[df['A'].idxmax(), ['A', 'B']].tolist()  # [2, 4]

推荐阅读