学术、科研、发文章的三件利器(3)

3.3 利器三:Matlab

这第三个利器就是一个好用的数据处理软件了。

从获得实验数据到数据的处理分析,再到输出图形化的结果,这一过程离不开数据处理软件,一个好的数据处理软件无疑可以产生事半功倍的效果。

3.3.1 Why Matlab?

第一个问题是,为什么选择Matlab?

首先,我们要了解一下所谓的数据处理软件都有哪些,各自都有什么特点。非常庆幸的是这个工作已经有人做了,那就是人见人爱的Wikipedia,这里有详细的列表,包括了很多常见的和不常见的软件。

既然这些candidates的方方面面的信息我们都已掌握了,而且数量又是如此之多,那么下面的工作就是,设定一些标准、择优选用。那么这些标准又应该包括哪些内容?问题来了,因为这些标准本身并没有一个标准,这些标准是应该根据需求量身定制的,而需求是多样的、变化的。所以,这里设定一个尽可能通用的、相对严格的的标准,主要包括以下几项:

1. 多平台支持

可以在Windows、Mac OS和Linux上运行。

2. 支持创建GUI

可以建立GUI,进行可视化操作。

3. 科学、高效的数据结构

变量、数据的定义、产生、赋值简便。

4. 便捷、丰富的功能模块

调用一个现成的功能模块就可以完成一个复杂工作。

5. 代码自动生成

通过可视化操作自动生成代码。

6. 语法高亮、纠错

能够明晰地显示语句结构、提示语法错误。

毫无疑问地,Matlab可以满足以上要求。基本上能够满足以上要求的软件就已经非常好用了,剩下的就是个人喜好的问题了。

3.3.2 The advantages of Matlab

1. Matlab可以运行在Windows、Mac OS、Linux等平台上,这样,在自己的MBP和办公室的Windows电脑上可以同步工作,再配合google drive这样的云硬盘,非常方便!

2. Matlab可以创建用户界面,这让它从一个数据分析的软件几乎变成了一个通用的编程工具,它的Graphical User Interface创建的fig对话框与MFC的对话框类似,功能非常强大,就一些小程序而言,基本可以和庞大臃肿的VS系列say goodbye了。

3. Matlab的数据结构非常得科学、清晰、易用。在Matlab里,所有的数据都在workspace中列出,一目了然,并且可以双击查看其内容;此外,Matlab有一个非常厉害的变量类型,叫cell(元胞),可以定义一个元胞数组(cell array),次数组的各个元素可以是不同的数据类型!比如一个2*2的cell array,第一个cell可以是一个常规变量(比如一个浮点值),第二个cell则可以是一个数组(比如一个整形的2维数组),第三个cell则可以是一个字符串,第四个cell则可以是另一个cell类型的数据。

4. Matlab有众多非常好用的ToolBox,这里是各种ToolBox的列表。通过ToolBox,可以非常方便、快速地得到分析结果,图形界面的操作也非常容易理解使用。

5. Matlab有非常强的代码生成功能,几乎每一步的图形界面的操作都可以生成这一步骤的代码,这样通过若干自动生成代码的步骤,很快就可以编写出非常复杂的程序。

6. Matlab的script编写界面也改进了不少,特别是2012版之后,改进特别大,语法高亮更加明晰、美观,而且新增了很多易用的功能,比如一键全部collapse,shift+enter全部替换等等。

总之,Matlab是个非常不错的数据处理软件,甚至已经不能仅仅算是一个数据处理软件了。跟Mathematica等一样,这些计算软件已经不能算是一个计算工具或者一门语言了,大概将世界数字化才是它们的最终目的吧。

想到《黑客帝国》(The Matrix),不禁森然。


此篇简单介绍Matlab的优点,下篇着重介绍如何使用。

 

“学术、科研、发文章的三件利器(3)”的2个回复

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据