tips:
(1)R的规范赋值符号是<-,也可以用=代替
(2)在Console 控制台(左下)输入命令,相当于Linux的命令行,右上是脚本窗口
(3)R的代码都是带括号的,括号必须是英文的
(4)显示工作路径 getwd(),设置工作路径setwd()
(5)向量是由元素组成的,元素可以是数字或者字符串。
(6)表格在R语言中称为数据框
(7)函数或者命令不会用时,除了百度/谷歌搜索以外,用这个命令查看帮助:?read.table,调出对应的帮助文档,翻到example部分研究。
(8)数据类型(重点是向量和数据框)
元素指的是数字或者字符串(用chr表示)等,根据它可以区分两个词:
标量:一个元素组成的变量,标量可以是一个数字,或者一个字符串,字符串在引用的时候必须要加引号
向量:多个元素组成的变量,c(),依次排列的数字或字符串
在实际使用时,一般会给变量赋值:x=或者x<-
x<- c(1,2,3) 常用的向量写法,意为将x定义为由元素1,2,3组成的向量
x<- 1:10 从1-10之间所有的整数
x<- seq(1,10,by = 0.5) 1-10之间每隔0.5取一个数 注意是逗号不是分号
x<- rep(1:3,times=2) 1-3 的所有数字重复2次
每次重新对x进行赋值时都会覆盖上一次的赋值,以最后一次为准
x4 向量x中第4个元素
x-4 排除法,向量x中除了第4个元素之外剩余的元素
x2:4 向量x中第2到4个元素
x-(2:4) 向量x中除了第2-4个元素
xc(1,5) 向量x中第1个和第5个元素
xx==10 向量x中等于10的元素
xx<0 向量x中小于0的元素
xx %in% c(1,2,5) 向量x中存在于向量c(1,2,5)中的元素
实操演示
一定要将示例数据放在工作目录下
建立新的.txt文档,存放,用X<-read.csv('文件名.txt')读取单引号双引号都可以
以示例文件"doudou.txt"和"huahua.txt"为例
read.table(file='huahua.txt',sep="\t",header=T)
From bing and R-help
Sep()
R语言自带的sep()函数是用于设置输出多个值之间的分隔符的函数。它可以在将结果打印或写入文件时,控制多个值之间的间隔样式。
通常情况下,在R语言中打印多个值时,默认的分隔符是空格。但使用sep()函数,我们可以将分隔符修改为任何我们想要的字符或字符串。
当我们在R语言中使用sep()函数时,它可以接受一个参数来设置输出多个值之间的分隔符。这个参数可以是一个字符向量或字符串。
header()
R语言中并没有名为header的函数。R语言中的header参数通常用于读取数据时指定是否将首行作为列名。在R语言中常用的函数是read.table()或read.csv()等用于读取数据的函数,这些函数通常都有header参数用于控制是否读取首行作为列名。
例如,当我们使用read.table()函数读取一个文本文件时,可以通过设置header参数来控制是否读取首行作为列名。如果header参数为TRUE(默认值),则将首行视为列名;如果header参数为FALSE,则将首行视为数据的一部分。
colnames(a) 查看列名
rownames(a) 查看行名,默认值的行名就是行号,1.2.3.4...
dim(a) 几行几列
write.table(a,file="cheng.txt",sep="t",quote=F) quote=F:分隔符改为逗号,字符串不加双引号(默认格式带由双引号)
write.table(a,file="cheng1.txt",sep="t")【如果不设置quote】
这次没有处理完的数据下次想接着用,采用保存和重新加载。保存的格式是RData。
save.image(file="bioinfoplanet.RData") 保存当前所有变量
save(a,file="test.RData") 保存其中一个变量
load("test.RData") 再次使用RData时的加载命令
从已经在R中运行的数据框提取出向量
iris是R语言的内置数据,可以直接使用。提取某两列作散点图:
plot(iris$Sepal.Length,iris$Sepal.Width)
将这行代码复制到一个新的R脚本中,然后保存到工作目录下,后缀是R
实操
作业:save(a,file="test.RData"),报错object a not found
没有为“a”赋值,或者选定的为“a”赋值的内容不正确,导致a在R语言中没有对应的内容
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。