获取pandas中单元格的列

时间:2018-02-08 16:45:46

标签: python pandas dataframe

对于我的数据框中的每一行,我都确定了最大值。我想得到每个最大值所在的列。例如,

myDict = {}
for i in df.index:
    maximum = max(df.iloc[i])
    myDict{i} = (columnOfMaximum, maximum)

获取columnOfMaximum的正确选择例程是什么?

2 个答案:

答案 0 :(得分:0)

df[['a', 'b', 'c']].idxmax(axis=1)会为您提供具有最大值的列的名称(例如,如果您有4行,则会为您提供[a,c,b,c]

myDict = {}

for i,cm,mx in zip(df.index, df.idxmax(axis=1), df.max(axis=1)):
    myDict[i] = cm,mx

答案 1 :(得分:0)

您也可以使用迭代器

it = iter(zip(df.idxmax(axis=1).values, df.max(axis=1).values))
myDict = dict(zip(list(range(df.shape[0])), it))