小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Excel新函數(shù)MAP,如何使用?有何意義?

 Excel教程平臺(tái) 2024-04-17 發(fā)布于四川

  文 前 推 薦   


LAMBDA遞歸運(yùn)算
坐字法查找合并單元格
REDUCE函數(shù)用法
連續(xù)數(shù)統(tǒng)計(jì)就用FREQUENCY

編按:

如何使用MAP函數(shù)?MAP函數(shù)有何實(shí)際意義?本篇教程為大家解惑。

今天小窩向大家分享MAP函數(shù)的用法。MAP函數(shù)同樣需要嵌套LAMBDA函數(shù)使用。
1.  作用與語(yǔ)法
MAP函數(shù)依次將數(shù)組的每個(gè)值代入LAMBDA函數(shù)中進(jìn)行運(yùn)算并以數(shù)組的形式輸出各自的結(jié)果。MAP在此處不是地圖,而是映射:將數(shù)組各值運(yùn)算后的結(jié)果按其原來(lái)位置關(guān)系映射成新數(shù)組。
=MAP(數(shù)組,LAMBDA運(yùn)算式)
數(shù)組,要參與運(yùn)算的數(shù)組,可以有多個(gè)數(shù)組。
LAMBDA運(yùn)算式,是最后一個(gè)參數(shù),其變量的多少取決于數(shù)組的多少。譬如一個(gè)數(shù)組,則LAMBDA只有一個(gè)變量;兩個(gè)數(shù)組,LAMBDA就有兩個(gè)變量。
2. 基本用法
1)單個(gè)數(shù)組運(yùn)算
譬如求每個(gè)數(shù)據(jù)的平方,公式=MAP(B13:B18,LAMBDA(x,x^2))
再譬如求數(shù)據(jù)的累加和,公式=MAP(B23:B28,LAMBDA(x,SUM(B23:x)))
說(shuō)明:
數(shù)組中各數(shù)據(jù)參與運(yùn)算包含兩種:既可以是數(shù)組中的各值參與運(yùn)算,也可以是數(shù)組中各單元格參與運(yùn)算。當(dāng)前的累加和,X代表的就是單元格引用而非具體的值。
2)多個(gè)數(shù)組運(yùn)算
譬如求兩列數(shù)的和,公式=MAP(A33:A38,B33:B38,LAMBDA(x,y,x+y))
說(shuō)明:
多個(gè)數(shù)組運(yùn)算,各數(shù)組的大小須一致,譬如當(dāng)前A33:A38和B33:B38都是6行1列的數(shù)組。
如果運(yùn)算的數(shù)組大小不一致,缺少項(xiàng)將出現(xiàn)#N/A錯(cuò)誤,譬如=MAP(A33:A38,B33:B37,LAMBDA(x,y,x+y)):
3)LAMBDA運(yùn)算的每次結(jié)果須是單個(gè)值而不是數(shù)組
譬如求下列數(shù)據(jù)分別加10和5的和,公式=MAP(B43:B48,LAMBDA(x,x+{10,5}))得不到正確結(jié)果:
說(shuō)明:
MAP會(huì)輸出由每個(gè)X的結(jié)果組成的數(shù)組,而當(dāng)前每個(gè)X的結(jié)果都是一個(gè)數(shù)組(X+{10,5}會(huì)得到一個(gè)數(shù)組而不是一個(gè)數(shù)),這就成了嵌套數(shù)組。因?yàn)镋xcel函數(shù)不支持嵌套數(shù)組,所以結(jié)果是#CALC!錯(cuò)誤。
3.  MAP有何意義?
到這里,想必大家對(duì)MAP的用法有了清楚的認(rèn)識(shí),同時(shí)會(huì)浮現(xiàn)一個(gè)疑惑:MAP有用嗎?
每個(gè)數(shù)據(jù)加10,直接數(shù)組運(yùn)算更簡(jiǎn)便:
每個(gè)數(shù)據(jù)的平方,同樣數(shù)組運(yùn)算很簡(jiǎn)便:
求累計(jì)和,也有簡(jiǎn)短公式=SUM($B$23:B23):
甚至MAP函數(shù)不支持的嵌套數(shù)組,也可以直接運(yùn)算,=B43:B48+{10,5}:
諸如以上,用MAP函數(shù),不但公式長(zhǎng),還有限制條件,為何還需要MAP函數(shù)呢?
(1)有很多函數(shù)是聚合類的,只輸出單個(gè)值而無(wú)法得到數(shù)組,如SUM、MAX、COUNT、AND等;對(duì)這類函數(shù),如果要輸出數(shù)組,就需要MAP;
(2)MAP函數(shù)可以只寫(xiě)一個(gè)公式就完成整列數(shù)據(jù)處理,而不再需要公式的下拉填充;
(3)當(dāng)需要原數(shù)組各自用同一算式計(jì)算后再分別代入另一個(gè)算式中計(jì)算時(shí),用MAP就不用建立輔助列。
譬如,求下方各行數(shù)據(jù)的最大值。使用MAX函數(shù)公式得到B53:C53的最大值,然后向下填充得到其他行的最大值。
由于MAX是聚合類函數(shù),只輸出一個(gè)最大值,所以我們不可能通過(guò)在MAX參數(shù)中添加數(shù)組來(lái)得到各行的最大值,如下方兩個(gè)公式都不行:
=MAX(B53:C53,B54:C54,B55:C55,B56:C56,B57:C57)
=MAX(B53:B57,C53:C57)
要想一個(gè)公式就得到所有行的最大值,只能用MAP函數(shù),=MAP(B53:B57,C53:C57,LAMBDA(X,Y,MAX(X,Y))):
4.  應(yīng)用例舉
1)替換字符
小窩曾分享下拉填充REDUCE函數(shù)公式進(jìn)行多字符替換?,F(xiàn)在與MAP配合,可以一個(gè)公式完成所有替換:
=MAP(B89:B93,LAMBDA(a,REDUCE(a,F89:F93,LAMBDA(x,y,SUBSTITUTE(x,y,OFFSET(y,0,1))))))
2)匯總名單
如下,按班級(jí)匯總名單。
現(xiàn)在匯總表標(biāo)題和班級(jí)都有了。用傳統(tǒng)公式的話,可以=TEXTJOIN("、",1,FILTER($C$98:$C$105,$B$98:$B$105=F98))并向下填充:
不填充,一個(gè)公式:
=MAP(F98:F99,LAMBDA(x,TEXTJOIN("、",1,FILTER(C98:C105,B98:B105=x)))):

    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多