1.R语言是分大小写的,可以用c()函数接受属性的属性值,用q()函数结束。
下面是常见的一些命令
getwd() 显示当前的工作目录
setwd("mydirectory") 修改当前的工作目录为mydirectory
ls() 列出当前工作空间中的对象
rm(objectlist) 移除(删除)一个或多个对象
help(options) 显示可用选项的说明
options() 显示或设置当前选项
history(#) 显示最近使用过的#个命令(默认值为25)
savehistory("myfile") 保存命令历史到文件myfile中(默认值为.Rhistory)
loadhistory("myfile") 载入一个命令历史文件(默认值为.Rhistory)
save.image("myfile") 保存工作空间到文件myfile中(默认值为.RData)
save(objectlist, file="myfile") 保存指定对象到一个文件中
load("myfile") 读取一个工作空间到当前会话中(默认值为.RData)
q() 退出R。将会询问你是否保存工作空间
2. 输入
函数source("filename")可在当前会话中执行一个脚本
3.文本输出
函数sink("filename")将输出重定向到文件filename中。默认情况下,如果文件已经存在,则它的内容将被覆盖。使用参数append=TRUE可以将文本追加到文件后,而不是覆盖它。参数split=TRUE可将输出同时发送到屏幕和输出文件中。不加参数调用命令sink()将仅向屏幕返回输出结果。
4. 图形输出
虽然sink()可以重定向文本输出,但它对图形输出没有影响。要重定向图形输出,使用
列出的函数即可。最后使用dev.off()将输出返回到终端
pdf("filename.pdf") PDF文件
win.metafile("filename.wmf") Windows图元文件
png("filename.png") PBG文件
jpeg("filename.jpg") JPEG文件
bmp("filename.bmp") BMP文件
postscript("filename.ps") PostScript文件
让我们通过一个示例来了解整个流程。假设我们有包含R代码的三个脚本文件script1.R、
script2.R和script3.R。执行语句:
source("script1.R")
将会在当前会话中执行script1.R中的R代码,结果将出现在屏幕上。
如果执行语句:
sink("myoutput",append=TRUE,split=TRUE)
pdf("mygraphs.pdf")
source(script2.R)
文件script2.R中的R代码将执行,结果也将显示在屏幕上。除此之外,文本输出将被追加到文件myoutput中,图形输出将保存到文件mygraphs.pdf中。
最后,如果我们执行语句:
sink()
dev.off()
source("script3.R")
文件script3.R中的R代码将执行,结果将显示在屏幕上
r语言各种包下载地址https:去掉/去掉/cran.r-project.org/web/packages/去掉
包的载入library()
例如a <- c(1,2,3,4,5,6)例如,a[c(2, 4)]用于访问向量a中的第二个和第四个元素
创建矩阵
nrow和ncol用以指定行和列的维数,dimnames包含了可选的、以字符型向量表示的行名和列名。选项byrow则表明矩阵应当按行填充(byrow=TRUE)还是按列填充(byrow=FALSE),默认情况下按列填充。
创建数组
dimnames是可选的、各维度名称标签的列表c(2,3,4)给出了各个维度下标的最大值.
函数factor()以一个整数向量的形式存储类别值,整数的取值范围是[1... k ](其中k 是名义型变量中唯一值的个数),同时一个由字符串(原始值)组成的内部向量将映射到这些整数上。
status <- c('e','v','c')
factor(status,ordered = TRUE,levels = c('e','v','c'))指定了顺序,默认情况是按首字母排序定义的大小。
首先,以向量的形式输入了数据。然后,将diabetes和status分别指定为一个普通因子和一个有序型因子。最后,将数据合并为一个数据框。函数str(object)可提供R中某个对象(本例中为数据框)的信息。它清楚地显示diabetes是一个因子,而status是一个有序型因子,以及此数据框在内部是如何进行编码的。注意,函数summary()会区别对待各个变量。它显示了连续型变量age的最小值、最大值、均值和各四分位数,并显示了类别型变量diabetes和status(各水平)的频数值。
创建一个名为ss的数据框,它含有三个变量:age(数值型)、gender(字符型)和weight(数值型)。然后你将调用文本编辑器,键入数据,最后保存结果。
mys <- data.frame(age=numeric(0),gender=character(0),weight=numeric(0))
ss <- edit(mys)
类似于age=numeric(0)的赋值语句将创建一个指定模式但不含实际数据的变量。注意,编辑的结果需要赋值回对象本身。函数edit()事实上是在对象的一个副本上进行操作的。如果你不将其赋值到一个目标,你的所有修改将会全部丢失!
读入数据,可以是txt、csv等格式
mycc <- read.table("irisdata.txt",header = FALSE,sep = ",")
header在文件中数据是否有变量名,有就是TRUE,sep指定分隔数据的分隔符。
r语言连接数据库,获取数据
1.首先需要注册数据源,一定要选择用户dsn.
2.当注册完数据源,可以查看有没有注册成功,输入odbcDataSources()
3.安装RODBC包
4.
library(RODBC)
myconn <- odbcConnect('hh',uid = 'ceshi',pwd = 'ceshi')
pp <- sqlQuery(myconn,'select * from [Train].[dbo].[test]')