許多資料集都有代表不同實體的行,每個資料集都有代表有關實體的資料的多個列。有時,有必要識別包含每行最大值的特定列。此任務可以使用 idxmax() 函數來實作。
在給定的範例中,我們有一個包含四列的 DataFrame:「通訊與搜尋」、「業務」、「常規」和「生活方式」。我們想要建立一個新欄位“Max”,其中包含與每行最大值對應的列名。
為此,我們可以使用idxmax(axis=1) 來查找列索引具有最大值:
這給了我們列標籤,但我們可以將它們轉換為相應的欄位名稱:
產生的DataFrame 將如下所示:
communications and search | business | general | lifestyle | max |
---|---|---|---|---|
0.745763 | 0.050847 | 0.118644 | 0.084746 | Communications |
0.333333 | 0.000000 | 0.583333 | 0.083333 | Business |
0.617021 | 0.042553 | 0.297872 | 0.042553 | Communications |
0.435897 | 0.000000 | 0.410256 | 0.153846 | Communications |
0.358974 | 0.076923 | 0.410256 | 0.153846 | Business |
請注意,idxmax() 也可用於尋找row 索引,其中最大值出現在每列中,使用df.idxmax() (或df.idxmax(axis=0))。
以上是如何找出 DataFrame 中每行的最大值的列名?的詳細內容。更多資訊請關注PHP中文網其他相關文章!