前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Day5-学习笔记(2024年2月2日)

Day5-学习笔记(2024年2月2日)

原创
作者头像
用户10954357
发布2024-02-02 23:33:01
1210
发布2024-02-02 23:33:01

R语言 数据结构

创建数据集

数据集就是由数据构成的一个矩形数组,行表示观测值,列表示变量。

PatientID

AdmDate

Age

Diabates

Status

1

10/15/2018

25

Type1

Poor

2

11/01/2018

34

Type2

Improved

3

10/21/2018

28

Type1

Excellent

4

10/28/2018

52

Type1

Poor

PatientID是行/实例标识符,R中称为rownames(行名)

AdmDate是日期型变量,Age是连续型变量(定量型)

Diabates是名义变量,Status是顺序变量,二者都是分类变量,R中称为因子

一、向量

是用于存储数值型、字符型或逻辑型数据的一维数组,可用函数c()来创建向量,eg:

a <- c(1, 2, 3, 6, -2, 4)#数值型

a <- c("one", "two", "three")#字符型

a <- c(TRUE, TRUE, FALSE, TRUE)#逻辑型

注意:单个向量中的数据必须拥有相同的类型或模式

标量是只含一个元素的向量,eg:a <- 3, g <- "US", h <- TRUE

在方括号中给定元素所在位置的数值,我们可以访问向量中的元素,eg:

①提取多个元素需用到**c()**,②冒号:用于生成一个数值序列
①提取多个元素需用到**c()**,②冒号:用于生成一个数值序列

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次

二、矩阵

矩阵是一个二维数组,只是每个元素都有相同的模式,可通过函数matrix()创建

先创建一个5x4的矩阵,再依次按行和列填充
先创建一个5x4的矩阵,再依次按行和列填充

三、数组

与矩阵相似,但是维度可以大于2,可通过函数array()创建

三维矩阵
三维矩阵

四、数据框

由于不同的列可以包含不同模式的数据,数据框较矩阵更为常见,可用函数data.frame()创建

符号$用来选取给定数据集的某个特定变量,table()列联表
符号$用来选取给定数据集的某个特定变量,table()列联表

五、列表

列表是数据类型中最为复杂的一种,列表就是一些对象或成分的有序集合,可能包含若干向量、矩阵、数据框甚至其他列表,可用函数list()来创建。

mylist <- list(object1, object2,...)

header表示文件是否在第一行包含了变量名的逻辑型变量,sep#分来数据值的分隔符,默认sep=" ", 这表示一个或多个空格、制表符/、换行或回车

从向量中提取元素

1、根据元素位置

代码语言:javascript
复制
x[4] #x第4个元素
x[-4]#排除法,除了第4个元素之外剩余的元素
x[2:4]#第2到4个元素
x[-(2:4)]#除了第2-4个元素
x[c(1,5)] #第1个和第5个元素

2、根据值

代码语言:javascript
复制
x[x==10]#等于10的元素
x[x<0]#小于0的元素
x[x %in% c(1,2,5)]#存在于向量c(1,2,5)中的元素

实操

注意:需要读取的东西要先放在工作目录下(手动移动),否则会报错,无法读取

1、获取示例数据框

X<-read.csv('doudou.txt')

view(x)
view(x)

2、读取本地数据框

read.table(file = "huahua.txt", sep = "\t",header=T)

2、查看行名和列名、行数和列数

colnames(a) #查看列名

rownames(a) #查看行名,默认值的行名就是行号,1.2.3.4..

dim(a)#几行几列

3、数据框的导出

write.table(a,file = "yu.txt",sep = ",",quote=F)#分隔符改为逗号,字符串不加双引号(默认格式带有双引号)

重新保存的数据框
重新保存的数据框

4、变量的保存和重新加载

#这次没有处理完的数据下次想接着用怎么办?--学会保存和重新加载。保存的格式是RData。

save.image(file="bioinfoplanet.RData")#保存当前所有变量

save(a,file="test.RData")#保存其中一个变量

load("test.RData")#再次使用RData时的加载命令

5、提取元素

  • ax,y#第x行第y列
  • ax,#第x行
  • a,y#第y列
  • ay #也是第y列
  • aa:b#第a列到第b列
  • ac(a,b)#第a列和第b列
  • a$列名#也可以提取列(支持Tab自动补全,不过只能提取一列) 6、直接使用数据框中的变量 iris是R语言的内置数据,可以直接使用。提取某两列作散点图: plot(iris$Sepal.Length,iris$Sepal.Width)

脚本的使用和保存:将上面的代码复制到一个新的R脚本中,

然后保存到工作目录下,再次打开,后缀是R。

问:save(a,file="test.RData")这句代码如果报错object a not found,是为什么?应该怎么解决?

答:可能是a这个变量不存在或者没有创建。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • R语言 数据结构
  • 创建数据集
    • 一、向量
      • 二、矩阵
        • 三、数组
          • 四、数据框
            • 五、列表
              • 1、根据元素位置
              • 2、根据值
          • 从向量中提取元素
          • 实操
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档