热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

javascript二维数组转置_精通Excel数组公式010:认识数组函数:TRANSPOSE、MODE.MULT和TREND...

学习Excel技术,关注微信公众号:excelperfect数组函数是可以提供多个值的Excel内置函数。下面列出了8个Excel内置的数组函数

学习Excel技术,关注微信公众号:

excelperfect

数组函数是可以提供多个值的Excel内置函数。下面列出了8个Excel内置的数组函数:

TRANSPOSE函数

MODE.MULT函数(在Excel 2010中引入)

TREND函数

FREQUENCY函数

LINEST函数

MMULT函数

MUNIT函数(在Excel 2013中引入)

MINVERSE函数

下面讲解前3个函数。

TRANSPOSE函数

TRANSPOSE函数可以将垂直数组转换成水平数组,并且可以处理一维或二维数据。

如下图1所示,在源数据区域A2:D4中,数据占3行4列,要想将这些数据转置,选择一个4行3列的单元格区域,如图中的A7:C10,输入公式:

=TRANSPOSE(A2:D4)

按Ctrl+Shift+Enter键。

77f333719157042e74a406385e592c4a.png

图1

注意,使用TRANSPOSE函数不仅将数据转置,而且建立了数据之间的链接,当源数据区域的数据变化时,被转置的数据随着变化。

有时候,当源数据区域中有空单元格时,TRANSPOSE函数将该单元格数据显示为0,如下图2所示。

5681b808b4452a4a8f621ab34e5abfd1.png

图2

注:有些函数,例如TRANSPOSE、VLOOKUP、INDEX等,将空单元格视作0;有些函数,例如MIN、MAX、AVERAGE,不会将空单元格视作0。

使用IF函数和ISBLANK函数来解决这个问题,让空单元格显示空,如下图3所示。

fdeab52e63b5bc4d03a23d0bfd5b5536.png

图3

MODE.MULT函数

在一组数中获取出现次数最多的数时,可以使用MODE函数或MODE.SNG函数,然而,当一组数中有多个出现次数一样且最多的数时,MODE函数或MODE.SNG函数只返回找到的第一个数,此时,可以使用MODE.MULT函数。

如下图4所示,选择单元格区域C7:C8,输入数组公式:

=MODE.MULT(A2:A15)

得到结果。(这两个数字都出现了3次且最多)

2bb7e5ee177ef34429e4580590d25139.png

图4

然而,我们知道上例中会有2个结果,因此选择了含有2个单元格的区域。实际上,数据可能变化,因此我们事先不知道有几个出现最多的数,如果选择可能多的单元格区域,输入上面的公式,可能在有的单元格中出现错误值,如下图5所示。

2bc49177c57b42d5eefd1353e44a6955.png

图5

此时,我们可以灵活运用前面学到的知识,组合多个函数来适应数据的变化,如下图6所示,如果有更多的数,则可直接向下拉动单元格。

146948b26ce320c1d2a7c5fdf3295929.png

图6

还可以使用IFERROR函数使公式简化,如下图7所示。

deacdf52260c101591421ccf21bdfb05.png

图7

TREND函数

使用TREND函数估计线性模型中的y值。有时候,我们需要使用数据来计算斜率和截距,以创建线性模型来辅助预测。线性模型等式为:

y=f(x)=mx+b

如下图8所示,使用了3个公式来预测学生的分数。

381c9116f8cdf80d8a7c154cb44cd391.png

图8

所有的4个函数(SLOPE、INTERCEPT、FORECAST、TREND)都要求知道y值和x值。如果使用SLOPE函数和INTERCEPT函数,则创建mx+b公式;如果使用FORECAST或TREND函数,则只需添加x值用于预测,如下图9所示;如果要预测多个y值,则最好使用TREND函数,如下图10所示。不像FORECAST函数每次都要重复计算,TREND函数仅计算m和b值一次,因此当处理大量数据时,其速度更快。

f5a3c8db8e77e7ebd2c3c4ab0be12f02.png

图9

ec41a3fcdf18577d950b192bfd22e083.png

图10

《Ctrl+Shift+Enter:MasteringExcel Array Formulas》学习笔记

完美Excel

欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。

欢迎到知识星球:完美Excel社群,进行技术交流和提问,获取更多电子资料。

060a7d09fef187aa5d4d66a4dd614b09.png



推荐阅读
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • 本文介绍了Redis的基础数据结构string的应用场景,并以面试的形式进行问答讲解,帮助读者更好地理解和应用Redis。同时,描述了一位面试者的心理状态和面试官的行为。 ... [详细]
  • Java容器中的compareto方法排序原理解析
    本文从源码解析Java容器中的compareto方法的排序原理,讲解了在使用数组存储数据时的限制以及存储效率的问题。同时提到了Redis的五大数据结构和list、set等知识点,回忆了作者大学时代的Java学习经历。文章以作者做的思维导图作为目录,展示了整个讲解过程。 ... [详细]
  • LeetCode笔记:剑指Offer 41. 数据流中的中位数(Java、堆、优先队列、知识点)
    本文介绍了LeetCode剑指Offer 41题的解题思路和代码实现,主要涉及了Java中的优先队列和堆排序的知识点。优先队列是Queue接口的实现,可以对其中的元素进行排序,采用小顶堆的方式进行排序。本文还介绍了Java中queue的offer、poll、add、remove、element、peek等方法的区别和用法。 ... [详细]
  • 测绘程序设计Excel度分秒转换模板附代码超实用版
    本文介绍了测绘程序设计Excel度分秒转换模板附代码超实用版的相关知识,包括准备工作、编写表达式和注意事项。在实际工作中,将GPS实测的经纬度度转换为度分秒是常见需求,本文提供了在Excel中快速进行转换的方法,以提高工作效率。 ... [详细]
  • 本文介绍了如何在给定的有序字符序列中插入新字符,并保持序列的有序性。通过示例代码演示了插入过程,以及插入后的字符序列。 ... [详细]
  • 如何用UE4制作2D游戏文档——计算篇
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了如何用UE4制作2D游戏文档——计算篇相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 安卓select模态框样式改变_微软Office风格的多端(Web、安卓、iOS)组件库——Fabric UI...
    介绍FabricUI是微软开源的一套Office风格的多端组件库,共有三套针对性的组件,分别适用于web、android以及iOS,Fab ... [详细]
  • 拥抱Android Design Support Library新变化(导航视图、悬浮ActionBar)
    转载请注明明桑AndroidAndroid5.0Loollipop作为Android最重要的版本之一,为我们带来了全新的界面风格和设计语言。看起来很受欢迎࿰ ... [详细]
  • 本文探讨了C语言中指针的应用与价值,指针在C语言中具有灵活性和可变性,通过指针可以操作系统内存和控制外部I/O端口。文章介绍了指针变量和指针的指向变量的含义和用法,以及判断变量数据类型和指向变量或成员变量的类型的方法。还讨论了指针访问数组元素和下标法数组元素的等价关系,以及指针作为函数参数可以改变主调函数变量的值的特点。此外,文章还提到了指针在动态存储分配、链表创建和相关操作中的应用,以及类成员指针与外部变量的区分方法。通过本文的阐述,读者可以更好地理解和应用C语言中的指针。 ... [详细]
  • 本文详细介绍了Java中vector的使用方法和相关知识,包括vector类的功能、构造方法和使用注意事项。通过使用vector类,可以方便地实现动态数组的功能,并且可以随意插入不同类型的对象,进行查找、插入和删除操作。这篇文章对于需要频繁进行查找、插入和删除操作的情况下,使用vector类是一个很好的选择。 ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • Go语言实现堆排序的详细教程
    本文主要介绍了Go语言实现堆排序的详细教程,包括大根堆的定义和完全二叉树的概念。通过图解和算法描述,详细介绍了堆排序的实现过程。堆排序是一种效率很高的排序算法,时间复杂度为O(nlgn)。阅读本文大约需要15分钟。 ... [详细]
  • 本文介绍了前端人员必须知道的三个问题,即前端都做哪些事、前端都需要哪些技术,以及前端的发展阶段。初级阶段包括HTML、CSS、JavaScript和jQuery的基础知识。进阶阶段涵盖了面向对象编程、响应式设计、Ajax、HTML5等新兴技术。高级阶段包括架构基础、模块化开发、预编译和前沿规范等内容。此外,还介绍了一些后端服务,如Node.js。 ... [详细]
  • MATLAB函数重名问题解决方法及数据导入导出操作详解
    本文介绍了解决MATLAB函数重名的方法,并详细讲解了数据导入和导出的操作。包括使用菜单导入数据、在工作区直接新建变量、粘贴数据到.m文件或.txt文件并用load命令调用、使用save命令导出数据等方法。同时还介绍了使用dlmread函数调用数据的方法。通过本文的内容,读者可以更好地处理MATLAB中的函数重名问题,并掌握数据导入导出的各种操作。 ... [详细]
author-avatar
周树草
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有