1863 阅读 2020-08-25 19:47:02 上传 0KB
以下文章来源于 奈提柯斯先生
R语言
语言学与R语言的碰撞
Xu & Yang
PhoneticSan
学习参考
Discovering Statistics Using R
Statistics for Linguistics with R
How to Do Linguistics with R
R in Action
Analyzing Linguistic Data
··· ···
Recap
GUI设计允许定义各种类型的输入框,除了button和comment之外,其余所有的输入框都包含了“变量”和“默认值/初始值”两个参数。
pauseScript函数可以实现暂停功能,同时会弹出对话框,点击continue后才能继续操作。
为了把GUI中的各种输入框类型也囊括进去,使用pauseScript函数不方便,因此我们可以使用beginPause和endPause来定义GUI,也方便实现更多的按钮功能。
R: The R Project for Statistical Computing
https://www.r-project.org/
R Project
Linguistics
1
初识R与安装
在语言学的数据整理分析中,你用过许许多多的不同软件,Excel、SPSS、Stata等等,甚至为了数据清洗还是用过Python等编程语言。在综合各方面因素(入门难易、分析速度、可视化效果等)后,R语言落入了众多语言学研究者的眼中。作为为统计计算和绘图而生的程序语言,顶尖的可视化水平,各式各样的数据分析技术,简单易懂的编写方式,都让R语言成为现在语言学研究者的必备技能之一。
ggplot2包提供的强大的可视化功能
首先我们来下载并安装R,这个过程很简单。本文开头所提供的链接,则是R语言的主页面,点击CRAN,任意选择一个镜像(选择中国镜像最佳),根据自己的电脑系统,点击后选择base(windows系统)或最新pkg安装包(Mac OS系统)并按照提示安装即可,这一步与其他所有软件是一样的。
安装完毕后,我们打开R,就能看到R的主界面了。这里需要提醒一点,如果你的R界面是其他语言(如日语、德语),需要查看你的系统默认语言是不是进行过更改,如果是,更改系统默认语言并重新安装即可。弹出来的是R程序的控制台(console),在该界面你可以输入任意语句命令并可以得到即时的结果。除此之外,我们还可以像Praat一样,在编辑器(editor window)中进行程序编写并运行,这样的好处就是可以保存你所写的代码,同时可以根据需要随时打开调用,而不用再在控制台一个一个语句地输入了。最后,我们常见到的窗口就是可视化数据出来的窗口,也就是绘图窗口(graphic window,在Mac OS中标记为quartz)。这三个窗口是我们在日后使用R的过程中最常见的三个窗口。
R Project
Linguistics
2
初试命令与函数
在Praat脚本的入门学习中,我们了解到,为了让计算机理解我们想要的过程,所有的编程语言都必须要有“处理过程的语句命令”和“标记这种语句命令的标签”,R自然也不例外。R语句主要包括对象(Object)和函数(functions)两个部分组成,实际上赋值给对象的不仅仅包括各种函数运算,也可以直接是数值。我们可以使用执行组合功能的c( )函数来实现一堆数组的输入(这种数据类型被称作向量(Vectors))。比如,我们输入几个人名,以向量形式存储在对象中,那么就可以如下所示进行输入,输入完毕后,回车,再次输入对象名,就可以看到人名被成功存储到对象中了。
这里我们需要说几点要注意的地方:
R语言是对大小写敏感的语言,这也就意味着,如果我们对同一事物使用了大小写不同的标注,R程序会认为它们是不同的内容。比如,我们设定了一个对象为Data,在调用的时候写成data,那么R就会报错显示对象不存在,因此你需要时刻注意大小写的情况。
R所使用的赋值符号是<-而非等号=,但这并不意味着“=”在R中是被禁止使用的符号,相反,你在一些参数传递的语句中(如header = TRUE)会经常看到等号。根据官方的说法,“=”只能在最高级别的命令语句中使用。此外,“<-”赋值符号可以改变方向,如 a <- 5 和 5 -> a两个语句是同样的效果。
R的控制台原则上是一行写一个语句,一旦回车就意味着这一行语句要被执行。如果你想使用控制台来一行写多个语句,那么你可以使用分号将不同的语句隔开,这样就能在同一行写多个语句。
为了让使用者不忘记括号的个数,在R中写代码时所用的所有括号、引号等有左右之分的符号时,都会默认输入完整的左右符号,这样就不会因为数括号而出现程序错误。
R Project
Linguistics
3
包(Package)
在安装R并运行后,其实已经预装好了众多功能。但是,预装的功能总会不能满足我们所有的研究需求。这时候,我们就需要额外安装“补丁”来填装进来,让我们可以玩转R,这些以一种定义完善的格式所组成的R函数、数据、预编译代码的集合,被称为包(package),计算机上用来存储包的目录称为库(library)。在http://cran.r-project.org/web/packages中可以看到为用户提供的不同种类的包。在R控制台里,我们可以用.libPaths( )函数显示库的位置,library( )函数可以调用这些包。
网页中可以查看各种包并下载
此外,我们最常用的下载并安装包的方式,是在R中调用install.packages( )命令来安装包。比如,我们安装最常用的ggplot2可视化图包,我们只需要在控制台写下install.packages("ggplot2"),在弹出的窗口中选择一个镜像,就可以下载安装了。每一次重新打开R的时候,如果需要ggplot2,那么就需要使用library(ggplot2)来调用这个包,之后才能使用该包中的函数。
包的安装
有人可能会问,如果我前后调用了两个包,两个包里都有相同函数名的函数,但是我想指定使用其中一个包的函数,我该怎么写呢?比如,我们调用了Hmisc和car两个包,它们都有recode函数,但是我只想使用其中一个包中的recode函数,这时候我们可以使用两个冒号来调用,具体方式是package::function( )。比如我要调用Hmisc包中的recode命令,那么我们只要使用Hmisc::recode( )即可。
本次我们主要对R的安装和包的调用进行了初步介绍,在下一篇中我们将着重介绍R中的数据结构以及导入数据的方法,敬请期待。
—END—
排版:Xu & Yang