第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在最大值索引 idxmax() 之前找到索引?

如何在最大值索引 idxmax() 之前找到索引?

我有一個以 CountryName 為索引的數(shù)據(jù)框,并將其 GDP 的值作為列。我試圖找到最大 GDP 國家之前的指數(shù)(國家名稱)。CountryName   GDP US             350UK             370 Australia      340 Germany        500 France         450如果我這樣做,df['GDP'].idxmax()它會返回Germany。但是有沒有簡單的返回方法Australia?(最大索引之前的索引)。
查看完整描述

3 回答

?
隔江千里

TA貢獻1906條經(jīng)驗 獲得超10個贊

shift在這種情況下,數(shù)據(jù)幀的方法可以幫助您解決問題。


# Initialize dataframe

import pandas as pd

df = pd.DataFrame({

    'CountryName': ['US', 'UK', 'Australia', 'Germany', 'France'],

    'GDP': [350, 370, 340, 500, 450],

})

df = df.set_index('CountryName')


# Get the index value of the row directly before the row with max 'GDP' value

target = df['GDP'].shift(-1).idxmax()

結(jié)果如下:


In [1]: target

Out[1]: 'Australia'


查看完整回答
反對 回復(fù) 2021-09-14
?
繁華開滿天機

TA貢獻1816條經(jīng)驗 獲得超4個贊

您可以使用np.ndarray.argmax索引并為其編制索引:

res = df.index[df['GDP'].values.argmax() - 1]  # Australia


查看完整回答
反對 回復(fù) 2021-09-14
?
夢里花落0921

TA貢獻1772條經(jīng)驗 獲得超6個贊

這行得通嗎?


df = pd.DataFrame({'CountryName': ['US', 'UK', 'Australia', 'Germany', 'France'], 'GDP': [350, 370, 340, 500, 450]})

print(df['CountryName'][df['GDP'].idxmax()-1])

# Australia

我可以看到的一個問題是,最高的GDP索引0是否會返回數(shù)據(jù)框中的CountryName位置-1或最后一個國家/地區(qū)。


查看完整回答
反對 回復(fù) 2021-09-14
  • 3 回答
  • 0 關(guān)注
  • 293 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號