如何用Pandas获取指定行的最大值及对应列名
获取DataFrame指定行的降序值与对应列名
实现方法
要提取DataFrame指定行的元素并按降序输出值与列名,可按以下步骤操作:
- 提取目标行:用
df.loc[行索引]获取指定行,返回的Series对象中,索引对应DataFrame的列名,值为该行对应列的数值。 - 排序处理:调用
sort_values(ascending=False)对Series按值降序排列,若需筛选特定范围的值,可添加条件过滤(如保留≥9的元素)。 - 输出结果:遍历排序后的Series,逐个打印值与对应的列名。
示例代码
import pandas as pd # 构造示例DataFrame s1 = pd.Series([5, 6, 7, 10, 12, 6, 8, 55, 9]) s2 = pd.Series([7, 8, 9, 16, 13, 8, 2, 11, 7]) df = pd.DataFrame([list(s1), list(s2)], columns=["A", "B", "C", "D", "E", "F", "G", "H", "I"]) # 指定要处理的行索引(示例为索引0) target_row = df.loc[0] # 按值降序排序,同时筛选出≥9的元素 sorted_row = target_row[target_row >= 9].sort_values(ascending=False) # 输出结果 for col, value in sorted_row.items(): print(f"{value} {col}")
输出结果
运行代码后将得到:
55 H 12 E 10 D 9 I
内容的提问来源于stack exchange,提问作者Václav Musil
相关产品推荐
相关产品推荐

