国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 辦公 > Excel > 正文

Excel中返回第2大或第N個最大值的方法

2024-08-23 19:24:45
字體:
來源:轉載
供稿:網友

在Excel中返回數據當中的第N個最大值的方法是使用LARGE函數,其原型如下:

LARGE(array,k)

array是數據數組,k為求第k個最大值。

如下圖所示數據,求出對應的第1個,第3個和第5個最大值

Excel中求第n個最大值

在使用過程中,如果給定的k<=0,或者k大于數據域中數據的個數,則該函數會返回 #NUM! 錯誤值

如果數據沒有重復值的話,其返回的第k個最大值是沒有問題的,但是如果數據中如果有重復的值,則可能返回的結果并非我們所認為的第k個最大值,因為該函數對于重復的值也會在次序上進行占位處理。也就是說如果某數據d在數據區域中重復2次的話,則返回的第n大和第n+1大值是相同的。

如下面的例子:

LARGE函數

從圖中可以看出83和87有兩個重復值,這樣第6大值和第7大值是相同的,第9大值和第10大值是相同的。

有時,我們想去除重復值,怎么辦呢?

我們可以借助Frequency函數和IF函數來實現,關于Frequency函數的使用,可以參見本站中的另外兩篇文章:

(1)Excel中frequency()函數的使用方法

(2)Excel中frequency()函數的進一步講解

如上例中,求第7大值,可以輸入如下的公式:

=LARGE(IF(FREQUENCY(A2:A11, A2:A11), A2:A11), 7)

輸入完后,按Ctrl + Shift + Enter完成,計算結果為:86

其執行原理如下:

(1)Frequency函數統計每個數值出現的頻次,因為該函數對于重復值,只在第一次出現時給出頻次結果,第2次顯示為0。

(2)IF函數根據頻次顯示對應數據域中的對應數據值,IF函數第一個參數是邏輯判斷,當為0時,視為假(FALSE),否則為真(TRUE)。IF函數的第2個參數是當第一個參數為真(TRUE)時,輸出的結果。在這里,IF函數第一個參數是FREQUENCY函數統計的頻次,如果是非0值,則返回數據區域對應位置上的數據值,否則輸出FALSE。(注意:這里所謂的對應位置上的值是指A2:A11中依次順序的值)

(3)上一步中實質上是將后面與前面重復的值在函數中變成了FALSE,這樣再使用LARGE函數時就沒有重復的值了。

具體結果如下:

Large函數不計重復值

從圖中可以看出,不計重值列中沒有重復值了。由于不計重復值后,第9大值和第10大值不存在,則返回#NUM!錯誤。

最后一列演示的是通過公式=IF(FREQUENCY(A2:A11, A2:A11),A2:A11)計算的中間結果,以便更清晰的知道這種方法執行的過程。

當然,使用LARGE函數求第k大值時不計重復值的實現還有其它方法,等待本站以后進行更新。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 和田市| 沅陵县| 璧山县| 新余市| 合川市| 治多县| 晋州市| 富源县| 齐河县| 富蕴县| 阿拉善左旗| 武平县| 九江市| 徐汇区| 宁国市| 丽江市| 胶南市| 博野县| 苏尼特右旗| 赣榆县| 深水埗区| 禹州市| 淳化县| 梨树县| 襄城县| 荆州市| 三台县| 开江县| 若尔盖县| 祥云县| 马山县| 阆中市| 贺州市| 大悟县| 景宁| 吐鲁番市| 龙山县| 伊川县| 衡南县| 陆河县| 惠州市|