百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

95%用户不知道的WPS隐藏功能:REDUCE函数如何改写表格运算逻辑?

itomcoil 2025-03-04 12:43 9 浏览

用法:

=REDUCE(初始值,数组,函数)

通过将LAMBDA函数应用到每个值并返回累加器中的总值,将数组减小为累计值。

案例一:计算平方和

公式:

=REDUCE(0,A1:A7,LAMBDA(x,y,x+y^2))

解析:

第一参数0为初始值,对应LAMBDA函数中的x;

第二参数A1:A7为遍历的数组,对应LAMBDA函数中的y;

LAMBDA函数定义REDUCE第一参数为x,第二参数为y,x+y^2为计算表达式。

表示每次进行平方计算后与初始值进行累加,并且每次计算的结果作为下一步计算的初始值,直到第二参数数组中的每个值遍历完成。

第一步:

x+y^2

=0+20^2=400

第二步:

=400+30^2=1300

第三步:

=1300+40^2=2900

......

最后一步:

=13900+80^2=20300

公式等同于:

=SUM(A1:A7^2)

案例二:字符逆转

公式:

=REDUCE(,A1:A4,LAMBDA(x,y,y&x))

解析:

第一参数省略,第二参数为遍历的数组,计算过程:第一参数省略,y的第一个值“学”直接传递不计算,作为第二步的x;接着y的第二个值“无”传递到计算表达式y&x,得到结果“无学”;这样每次传递的值累加到上一步结果的前面,实现字符逆转的效果。

案例三:计算销售总额

公式:

=REDUCE(0,A2:A10,LAMBDA(x,y,x+y*OFFSET(y,,1)))

解析:

计算表达式为x+y*OFFSET(y,,1),第一次传入x=0,y=20,OFFSET(y,,1)为y向右偏移一列的值80,即0+20*80;第二次x=160,y=30,OFFSET(y,,1)=81,这样依次遍历A2:A10完成计算,返回最终的结果45960。

公式等同于:

=SUM(A2:A10*B2:B10)

案例四:转换分组

公式:

=REDUCE(A2:B2,A3:A5,LAMBDA(X,Y,VSTACK(X,IFNA(HSTACK(Y,TEXTSPLIT(OFFSET(Y,,1),,"、")),Y))))

解析:

A2:B2为初始值,A3:A5为遍历的数组,TEXTSPLIT将传入的名单拆分后,HSTACK将其与A列部门名称合并为新的数组,最后VSTACK将数组垂直堆砌起来。

相关推荐

ArcGIS10.5软件安装包以及安装教程

安装步骤:1.打开“ArcGIS10.5”文件夹,鼠标右击软件压缩包“irSArGde105_Desktop.part1”,选择“解压到irSArGde105_Desktop”2.打开“ArcGIS1...

Python Poetry 安装文档(安装python docx)

Poetry是一款现代的Python包(package)管理器,它是一款多功能工具。它能够:方便地管理Python虚拟环境,不再需要手动创建是一个安装Python包的绝佳工具,无需再使用pi...

Python自动化办公应用学习笔记3—— pip工具安装

3.1pip工具安装最常用且最高效的Python第三方库安装方式是采用pip工具安装。pip是Python包管理工具,提供了对Python包的查找、下载、安装、卸载的功能。pip是Python官方提...

Python UV 环境下的 PyKDL 运动学库安装

视频讲解:PythonUV环境下的PyKDL运动学库安装_哔哩哔哩_bilibilimujoco-learning这个仓库,改成uv管理环境依赖后,原来的一些包有些缺失,比如之前安装的PyKD...

zabbix企业微信告警(zabbix5.0企业微信告警详细)

zabbix企业微信告警的前提是用户有企业微信且创建了一个能够发送消息的应用,具体怎么创建可以协同用户侧企业微信的管理员。第一步:企业微信准备我们需要的内容包括企业ID,应用的AgentId和应用的S...

基于centos7部署saltstack服务器管理自动化运维平台

概述SaltStack是一个服务器基础架构集中化管理平台,具备配置管理、远程执行、监控等功能,基于Python语言实现,结合轻量级消息队列(ZeroMQ)与Python第三方模块(Pyzmq、PyCr...

功能实用,效率提升,Python开发的自动化运维工具

想要高效的完成日常运维工作,不论是代码部署、应用管理还是资产信息录入,都需要一个自动化运维平台。今天我们分享一个开源项目,它可以帮助运维人员完成日常工作,提高效率,降低成本,它就是:OpsManage...

centos定时任务之python脚本(centos7执行python脚本)

一、crontab的安装默认情况下,CentOS7中已经安装有crontab,如果没有安装,可以通过yum进行安装。yuminstallcrontabs二、crontab的定时语法说明*代表取...

Fedora 41 终于要和 Python 2.7 说再见了

红帽工程师MiroHroncok提交了一份变更提案,建议在Fedora41中退役Python2.7,并放弃仍然依赖Python2的软件包。Python2已于2020年1...

软件测试|使用docker搞定 Python环境搭建

前言当我们在公司的电脑上搭建了一套我们需要的Python环境,比如我们的版本是3.8的Python,那我可能有一天换了一台电脑之后,我整套环境就需要全部重新搭建,不只是Python,我们一系列的第三方...

环境配置篇:Centos如何安装Python解释器

有小伙伴时常会使用Python进行编程,那么如何配置centos中的Python环境呢?1)先安装依赖yuminstallgccgcc-c++sqlite-devel在root用户下操作:1...

(三)Centos7.6安装MySql(centos8.3安装docker)

借鉴文章:centos7+django+python3+mysql+阿里云部署项目全流程。这里我只借鉴安装MySql这一部分。链接:https://blog.csdn.net/a394268045/a...

Centos7.9 如何安装最新版本的Docker

在CentOS7.9系统中安装最新版本的Docker,需遵循以下步骤,并注意依赖项的兼容性问题:1.卸载旧版本Docker(如已安装)若系统中存在旧版Docker,需先卸载以避免冲突:sudoy...

Linux 磁盘空间不够用?5 招快速清理文件,释放 10GB 空间不是梦!

刚收到服务器警告:磁盘空间不足90%!装软件提示Nospaceleftondevice!连日志都写不进去,系统卡到崩溃?别慌!今天教你5个超实用的磁盘清理大招,从临时文件到无用软件一键搞定...

Playwright软件测试框架学习笔记(playwright 官网)

本文为霍格沃兹测试开发学社学员学习笔记,人工智能测试开发进阶学习文末加群。一,Playwright简介Web自动化测试框架。跨平台多语言支持。支持Chromium、Firefox、WebKit...