学习小组Day5笔记--陈立基

R语言的数据类型

一、向量

  1. 理解向量,首先要知道什么是标量。
    标量:一个元素组成的变量。如1,x等
    向量:多个元素有序组成的变量。如c(1,2,3),c(a,b,d)等
  2. 尝试在R上为x赋值,数据类型为向量
> x<- c(1,2,3)  #x被赋值为由1、2、3三个元素组成的向量
> x<- 1:10  #x被赋值为1-10之间的所有整数
> x<- seq(1,10,by = 0.5)  #x被赋值为1-10之间以0.5为间距的数,即1、1.5、2、2.5等
> x<- rep(1:3,times=2)  #x下被赋值为1、2、3重复两次,即1、2、3、1、2、3
  • 每次为x赋值都会覆盖前一次的赋值结果
  • 除了可以赋值数字外,还可赋值特定字符,前提是真实存在的,如赋值为某一已创建的文件。
  1. 从向量中提取元素
> x<- rep(1:3,times=2)  #x赋值,向量元素为:1、2、3、1、2、3
> x[4]  #取x中的第4个元素
[1] 1
> x[-4]  #取x中除第4个元素以外的元素
[1] 1 2 3 2 3
> x[2:4]  #取x中第2-4个元素
[1] 2 3 1
> x[-(2:4)]  #取x中第2-4个元素以外的元素
[1] 1 2 3
> x[c(1,5)]  #取第1、5个元素
[1] 1 2

二、数据框

  1. 读取本地数据
> setwd("C:\\Users\\birdman\\Desktop")  #设置工作目录
> read.table(file = "huahua.txt", sep = "\t",header = T)  #读取数据框。
  X1 X2
1  A  1
2  B NA
3  C NA
4  D  3
5  E NA
> read.table(file = "huahua.txt", sep = "\t",header = F)
  V1 V2
1 X1 X2
2  A  1
3  B   
4  C   
5  D  3
6  E  
> a <- read.table(file = "huahua.txt", sep = "\t",header = T)  #a赋值为数据框

通过查询和尝试,可得知,header表示表头,T即TRUE,F即FALSE。seq是元素之间的间隔符,\t表示空格,\r表示回车,\n表示回车换行。

  1. 设置行名和列名
> x<- read.csv("doudou.txt")  
> colnames(x)  #查看列名
[1] "X1" "X2"
> rownames(x)  #查看行名,默认为数字序号
[1] "1" "2" "3" "4" "5"
> colnames(x)[1] <- "bioplanet"  #将列名的第一个修改为bioplanet
  • read.table:加载带分隔符的数据,默认分隔符为"\t"。
  • read.csv:加载带分割符的数据,默认分割符为逗号。
  1. 导出数据框
> write.table(x,file = "yu.txt",sep = ",",quote=F)  
#file:将数据框导入文件yu.txt,如果不存在,则创建一个。
#seq:设置分割符为","。
#quote:字符串是否使用引号表示,默认为TRUE,即使用引号表示。
  1. 变量的保存与重新加载
> save.image(file="test.RData")  #保存所有变量到test.RData中
> save(x, file="test.RData")  #保存变量x到文件test.RData中
> load("test.RData")  #加载test.RData中的变量

每次保存变量都会覆盖上一次保存的变量,所以要更换文件名!

  1. 提取元素
> x[1,2]  #提取x中第一行第2个数据
[1] 1
> x[2,]  #提取x中第二行的数据
  bioplanet X2
2         B NA
> x[,2]  #提取x中第二列的数据
[1]  1 NA NA  3 NA
> x[1:2]  #提取x中第一列到第二列的数据
  bioplanet X2
1         A  1
2         B NA
3         C NA
4         D  3
5         E NA
> x[c(1,2)]  #提取x中第一列和第二列的数据
  bioplanet X2
1         A  1
2         B NA
3         C NA
4         D  3
5         E NA
问题

save(X,file="test.RData")这句代码如果报错object X not found,是为什么,应该怎么解决?
object X not found,即不存在变量X,可能是没有注意到大小写,将变量x写成了X,也有可能是根本不存在这个变量。根本在于检查是否有这个变量

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容