R语言特征
- 对大小写敏感
- 通常,数字,字母,. 和 _都是允许的(在一些国家还包括重音字母)。不过,一个命名必须以 . 或者字母开头,并且如果以 . 开头,第二个字符不允许是数字。
- 基本命令要么是表达式(expressions)要么就是 赋值(assignments)。
- 命令可以被 (;)隔开,或者另起一行。
- 基本命令可以通过大括弧({和}) 放在一起构成一个复合表达式(compound expression)。
- 一行中,从井号(#)开始到句子收尾之间的语句就是是注释。
- R是动态类型、强类型的语言。
- R的基本数据类型有数值型(numeric)、字符型(character)、复数型(complex)和逻辑型(logical),对象类型有向量、因子、数组、矩阵、数据框、列表、时间序列。
基础指令
运行
q()——退出R程序
tab——自动补全
ctrl+L——清空console
ESC——中断当前计算
调试查错
browser()
和 debug()——设置断点进行,运行到此可以进行浏览查看(具体调试看browser()帮助文档(c,n,Q))
stop('your message here.')——输入参数不正确时,停止程序执行
cat()——查看变量?
帮助
help(solve)
和 ?solve 等同
??solve——检索所有与solve相关的信息
help("[[") 对于特殊含义字符,加上双引号或者单引号变成字符串,也适用于有语法涵义的关键字 if,for 和 function
help(package="rpart")——查看某个包
help.start()——得到html格式帮助
help.search()——允许以任何方式(话题)搜索帮助文档
example(topic)——查看某个帮助主题示例
apropos("keyword")——查找关键词keyword相关的函数
RSiteSearch("onlinekey", restrict=fuction)——用来搜索邮件列表文档、R手册和R帮助页面中的关键词或短语(互联网)RSiteSearch('neural networks')
文件目录设置
setwd(
)——设置工作文件目录
getwd()——获取当前工作文件目录
list.files()——查看当前文件目录中的文件
加载资源
search()——通过search()函数,可以查看到R启动时默认加载7个核心包。
基础函数:数学计算函数,统计计算函数,日期函数,包加载函数,数据处理函数,函数操作函数,图形设备函数
setRepositpries()——选择软件库(CRAN,Bioconductor,R-Forge),寻找安装包的方法另看《【R笔记】寻找R的安装包》
(.packages())——列出当前包
(.packages(all.available=TRUE))——列出有效包
install.packages(“”)——安装包
library()和require()——加载R包(package)至工作空间
data()——列出可以被获取到的存在的数据集(base包的数据集)
data(,package=“nls”)——将nls包的datasets加载到数据库中
批处理文件和结果重定向
source("commands.R")——执行commands.R (存放批处理命令的)脚本文件。
cat(,file="")——可以把R命令输出至外部文件,然后调用source函数进行批处理
do.call(,)——调用函数,第一个参数指示调用函数字符串名称,第二个参数包含调用所需参数的一个列表
sink("record.lis")——把后续的输出结果从控制台重定向到外部文件 record.lis 中
sink()——把后续代码输出重新恢复到终端上展示
attach()——将数据框中的变量链接到内存中,便于数据调用
detach()——对应attach(),取消变量的链接,detach()里没有参数!
注:attach()和detach()均是在默认变量搜索路径表中由前向后找到第一个符合变量名称,因此之前若存在重名变量,有可能会出现问题!!!
输入输出(读入输出数据、文件)
assign("x",c(1,2,3)) 和 x <- c(1,2,3) 和 c(1,2,3)->x ——向量赋值
read.table("infantry.txt", sep="\t", header=TRUE)——seq属性用其它字符分割,比如文本文件用空格(tab)分隔,header设置为文件中已经存在表头名称
read.csv("targets.csv")——读入csv(Comma Seperated Values)文件,属性被逗号分割
read.csv(url(""))——read.csv() 和 url()的合体,读存在网上的数据
x <- scan(file="")——手动输入数据,同时scan可以指定输入变量的数据类型,适合大数据文件
scan("data.dat", what = list("", 0, 0))——what指定变量类型列表
readLines('http://en.wikipedia.org/wiki/Main_Page',n=10)——读取文本文件,将文档转为以行为单位存放的list格式,比如读取读取wikipedia的主页html文件的前十行
write.table(Data, file="file.txt", row.names = FALSE, quote=FALSE)——输出,quote为FALSE去掉字符串类型的双引号,write.table(stasum, "stasum.csv",row.names = FALSE,col.name=FALSE,sep=",",append=TRUE)
write.csv(data,file="foo.csv",row.names=FALSE)——写成csv格式,row.names=FALSE去掉行号
print()——打印
save.image("./data.RData")——把原本在计算机内存中(工作空间)活动的数据转存到硬盘中。
load("./RData")——加载目录中的*.RData,把文档-词项矩阵从磁盘加载到内存中
数据查看
R是一种基于对象(Object)的语言,对象具有很多属性(Attribute),其中一种重要的属性就是类(Class),最基本的类包括了数值(numeric)、逻辑(logical)、字符(character)、列表(list),符合类包括矩阵(matrix)、数组(array)、因子(factor)、数据框(dataframe)。
class(