根据另一列与Pandas的值从相邻列获取立即值

时间:2019-10-29 23:56:36

标签: python pandas

比方说,我想找到一个在炸玉米饼吃比赛中吃炸玉米饼最多的人。

DataFrame

df = pd.DataFrame({'tacos':[5,10,7]},index=['John','Carlos','Peter'])

如果我确定了一个人吃的最大玉米面豆卷,那我怎么才能得到这个人的名字作为字符串呢?

maxtacos = df['Tacos'].max()


df.get(df[Name], df['Tacos', maxtacos])

我希望得到“卡洛斯”。

谢谢

1 个答案:

答案 0 :(得分:1)

如果我理解正确,那么您应该可以使用df.idxmax()

df = pd.DataFrame({'tacos':[5,10,7]},index=['John','Carlos','Peter'])
df.idxmax()

在此示例中,这将返回Carlos。

现在,如果您想要另一列的值,则可以执行以下操作:

df = pd.DataFrame({'tacos':[5,10,7],'beers':[1,2,3]},index=['John','Carlos','Peter'])
df['beers'].loc[df['tacos'].idxmax()]

这将告诉您吃炸玉米饼最多的人喝了2杯啤酒。