我想找到数据框中每列的最高 3 个值,并返回按值排序的索引名称。数据框如下所示:
df = pd.DataFrame({"u1":[1,2,-3,4,5],
"u2":[8,-4,5,6,7],
"u3":[np.NaN,np.NaN,np.NaN,np.NaN,np.NaN]},
index=["q1","q2","q3","q4","q5"])
Run Code Online (Sandbox Code Playgroud)
结果如下所示:
u1 u2 u3
q5 q1 NaN
q4 q5 NaN
q2 q4 NaN
Run Code Online (Sandbox Code Playgroud) 对于数据框中的每一行,我试图选择在列表中指定的列。该列表的长度与数据框的行长度相同。
df = pd.DataFrame({"a":[1,2,3,4,5],
"b":[3,4,5,6,7],
"c":[9,10,11,12,13]})
lst = ["a","a","c","b","a"]
Run Code Online (Sandbox Code Playgroud)
结果如下所示:
[1,2,11,6,5]
Run Code Online (Sandbox Code Playgroud)