Python 数据帧中具有索引和列名的最大(n)个数字
我希望找出数据帧中最大的5个数字,并存储这5个值的索引名和列名 我试图使用nlargest()和idxmax方法,但未能实现我想要的。我的代码如下:Python 数据帧中具有索引和列名的最大(n)个数字,python,pandas,numpy,dataframe,data-analysis,Python,Pandas,Numpy,Dataframe,Data Analysis,我希望找出数据帧中最大的5个数字,并存储这5个值的索引名和列名 我试图使用nlargest()和idxmax方法,但未能实现我想要的。我的代码如下: import numpy as np import pandas as pd from pandas import Series, DataFrame df = DataFrame({'a': [1, 10, 8, 11, -1],'b': [1.0, 2.0, 6, 3.0, 4.0],'c': [1.0, 2.0, 6, 3.0, 4.0]})
import numpy as np
import pandas as pd
from pandas import Series, DataFrame
df = DataFrame({'a': [1, 10, 8, 11, -1],'b': [1.0, 2.0, 6, 3.0, 4.0],'c': [1.0, 2.0, 6, 3.0, 4.0]})
你能告诉我怎样才能做到这一点吗。感谢您使用和:
这将为您提供一个具有多索引的系列,其中第一级是原始数据帧的索引,第二级是给定值的列名。以下是max\u vals
的外观:
3 a 11.0
1 a 10.0
2 a 8.0
b 6.0
c 6.0
要显式获取索引和列名,请在max\u vals
的索引上使用:
max_idx = max_vals.index.get_level_values(0)
max_cols = max_vals.index.get_level_values(1)
Index(['a', 'a', 'a', 'b', 'c'], dtype='object')
max_idx
的结果:
Int64Index([3, 1, 2, 2, 2], dtype='int64')
max\u cols
的结果:
max_idx = max_vals.index.get_level_values(0)
max_cols = max_vals.index.get_level_values(1)
Index(['a', 'a', 'a', 'b', 'c'], dtype='object')
使用和:
这将为您提供一个具有多索引的系列,其中第一级是原始数据帧的索引,第二级是给定值的列名。以下是max\u vals
的外观:
3 a 11.0
1 a 10.0
2 a 8.0
b 6.0
c 6.0
要显式获取索引和列名,请在max\u vals
的索引上使用:
max_idx = max_vals.index.get_level_values(0)
max_cols = max_vals.index.get_level_values(1)
Index(['a', 'a', 'a', 'b', 'c'], dtype='object')
max_idx
的结果:
Int64Index([3, 1, 2, 2, 2], dtype='int64')
max\u cols
的结果:
max_idx = max_vals.index.get_level_values(0)
max_cols = max_vals.index.get_level_values(1)
Index(['a', 'a', 'a', 'b', 'c'], dtype='object')
非常感谢@root。我今天学会了这些方法,并且能够做到。谢谢你的努力。非常感谢@root。我今天学会了这些方法,并且能够做到。谢谢你的努力。