事情的起因可以追溯到我之前追的一个剧,那个剧开了一个神脑洞,设定了两个可以用数学公式成神的主角,前阵子刚放出了第二季,我兴奋不已的追完剧并热血沸腾地打开数学书觉得自己可以朝着征服世界的方向更近一步,然而三分钟后我就趴在了桌上并且不想爬起来了

给优酷爸爸冲过钱且还没过期的亲有兴趣的话可以去看下这部剧,名字叫天才J,全篇还是挺燃的,但如果你表示对看剧不感兴趣而是对数学书感兴趣的话,请手动把你自己溺死在书本的海洋里并且不要再回来了

不好意思,废话扯多了,容我把话题拽回来,那部剧第二季开了个新脑洞,让男一号换上了数字过敏症,并成功找到了一个治疗这种症状的方法——图形,其中主要的一个论点是:这世上所有的公式都是可以用图形来表示的,所以如果你写不出公式的话,那就画图吧

excel数据多维度多层次分析(Excel数据分析傅里叶变换)(1)

这个论点我本来追剧的时候纯粹是当成脑洞来看的,可当我这两天开始看傅里叶变换的内容并尝试理解这是个什么东西的时候,我感受到了一阵强烈的暴击,谈不上完全明白了,但也许看懂口香糖的组成配方就可以了解宇宙奥秘这事儿还真不是开玩笑的

虽然闲话了那么多,但是我今天并不准备多解释傅里叶变换的原理,网上有很多解释这东西的文章而且其中有写得非常非常好的,我就算再写一遍也只能是自愧不如,所以,我主要从自己的角度写一下操作方法,并补充一点自己的理解

首先,找到我们要用的工具在哪里:

Excel数据分析加载项——傅里叶分析

excel数据多维度多层次分析(Excel数据分析傅里叶变换)(2)

excel数据多维度多层次分析(Excel数据分析傅里叶变换)(3)

excel数据多维度多层次分析(Excel数据分析傅里叶变换)(4)

这个分析工具需要你输入的内容很简单,一列数据,但是,它有个比较特别的要求,这一列数据的长度需要满足2的整数次方,比如2、4、8、16、32等等,如果你的数列不符合要求,它会直接弹窗告诉你它罢工了,所以长度不符的时候,请注意把数据截短或补充到要求的长度

这里我用的数列是175个数,用0补充到了256个放了进去,输出结果如下:

excel数据多维度多层次分析(Excel数据分析傅里叶变换)(5)

看到这个输出值的第一眼我是奔溃的,请告诉我这是个什么玩意儿???!!!

当我冷静下来之后,去查了下资料,发现这个东西叫复数,后面带的那个i是-1开根号的虚数(又开始超出理解范畴了),要强行按数字的定义去理解的话可能有点麻烦,但是如果用图形理解就感觉还好,比方说第二个数-377.XX-1039.XXi,在图形上是一个点的位置,坐标(-377.XX,-1039.XX),这样想想心情就稍稍平复一些了

通过这个点的位置,我们还可以算出该点和原点之间的距离,这里要用到复数公式IMABS:

=IMABS(复数),以(-377.XX,-1039.XX)为例,计算结果是SQRT((-377.6)^2 (-1039.9)^2)约等于1066.3

图形解释:

excel数据多维度多层次分析(Excel数据分析傅里叶变换)(6)

整列全部计算出复数模:

excel数据多维度多层次分析(Excel数据分析傅里叶变换)(7)

这里,我加上了左边一列"周期数",这个部分其实和我们最终要的东西关系比较大,我放到后面一点再讲

然而,有这串输出结果是不够的,傅里叶变换的重要用途是用n多个正弦和余弦函数的组合叠加起来后拟合一个具有周期性的曲线,既然是拟合,那就意味着我们需要的结果是最接近原先那个曲线的同时,表达形式也最简单的一个公式,要满足这两个条件,也就意味着我们需要的是所有叠加起来的曲线中对整个形状的影响最明显的那一条

这段是不是有点绕,没事,咱说的简单点,我们现在得到了每个点X的位置以及它们和原点连成的一条直线OX,但是,如果这条线不是静止的,而是在绕着原点转圈圈呢?这样的话,我们得到的直线放在一起,看起来就像这样:(这个画法不一定确切,只是方便理解)

excel数据多维度多层次分析(Excel数据分析傅里叶变换)(8)

有没有感觉它像有点像时钟?每层都有根针在画圈圈,但是每层之间互不影响

所谓找到对整个图形影响最明显的曲线,如果放在上面这个图形里,那意思就是所有层里半径最大的圆圈

那为什么要半径最大的那个圆就够了呢?比如说你现在走在路上,有个人突然问你:"不好意思,现在几点啦?"你低头看下表:"大概4点了",就算回答的精确点,顶多告诉他,"现在大概4点缺5分吧",这样就差不多了不是?你要真的正正经经报给他,现在是北京时间下午3点53分32秒,估计得被人当成有病吧

为了表示我还是研究了一点的,画个频率图意思一下:

excel数据多维度多层次分析(Excel数据分析傅里叶变换)(9)

去掉0点的话,整个图是非常有原则的左右对称,咱们需要的是最大值那个点的周期位置,放大下细节:

excel数据多维度多层次分析(Excel数据分析傅里叶变换)(10)

对应的数据在这里:

excel数据多维度多层次分析(Excel数据分析傅里叶变换)(11)

所以按这个结果,我计算的那列数据的周期是4

呼~~~今天有点超长呢~~~~

,