名词 |
解释 |
操作 |
数据集 |
由数据构成的一个矩形数组,行表示观测,列表示变量 |
|
数据结构 |
用于存储数据对象类型(标量,向量,矩阵,数组,数据框和列表) |
|
对象 |
指可以赋值给变量的任何事物。(包括常量,数据结构,函数,图形等) |
|
向量 |
用于存储数值型,字符型或逻辑型数据的一维数组
- 单个向量中的数据必须拥有相同的类型或模式(数值型,字符型或逻辑型)。同一向量中无法混杂不同模式的数据。
|
#创建数值型向量 a<-c(1,3,5,7,9)
#创建字符型向量 b<-c("one","two","three","four")
#创建逻辑型向量 c<-c(TRUE,TRUE,FALSE,FALSE,TRUE) |
标量 |
只含一个元素的向量 。用于保存常量 |
|
矩阵 |
矩阵是一个二维数组,仅能包含一种数据类型。通过函数matrix()创建
- 函数matrix()语法:mymatrix<-matrix(vector,nrow,ncol,byrow,dimnames)
- vector - 包含了矩阵的元素
- nrow - 指定行的维数
- ncol - 指定列的维数
- dimnames - 包含了可选的,以字符型向量表示的行名和列名
- byrow - 指定按行填充(byrow = TRUE)还是按列填充(byrow = FALSE),默认按列填充。
|
#创建矩阵5x4的矩阵 y<-matrix(1:20,nrow=5,ncol=4)
#创建按行填充的2x2矩阵 cells<-c(1,26,24,68) rnames<-c("R1","R2") cnames<-c("C1","C2") mymatrix<-matrix(cells,nrow=2,ncol=2,byrow=TRUE, dimnames = list(rnames,cnames))
|
数组 |
与矩阵类似,但是维度可以大于2,数组中的数据只能有一种模式。通过函数array()创建
- 函数array()语法:myarray<-array(vector,dimensions,dimnames)
- vector - 包含了数组中的数据
- dimensions - 数值型向量,给出各个维度下标的最大值
- dimnames - 可选的,各维度名称标签的列表
|
#创建3维数值型数组 dim1<-c("A1,","A2") dim2<-c("B1","B2","B3") dim3<-c("C1","C2","C3","C4") z<-array(1:24,c(2,3,4),dimnames = list(dim1,dim2,dim3)) |
数据框 |
用于存储数据的一种结构:列表示变量,行表示观测。(在同一数据框中可以存储不同类型,如数值型,字符型)可通过函数data.frame()创建
- 函数data.frame()语法:mydata<-data.frame(col1,col2,col3,....)
- col1,col2,col3 - 列向量(第1列,第2列,第3列,)。可以为任何类型。每一列的类型可以由names指定
通过rowname 指定实例标识符(实例标识符 - 用于区分数据集中不同的个体)
- patientdata<-data.frame(patientID,age,diabetes,status,row.names=patientID)
|
#创建数据框 patientID <-c(1,2,3,4) age<-c(25,34,28,52) diabetes<-c("Type1","Type2","Type1","Type1") status<-c("Poor","Improved","Excellent","Poor")
patientdata<-data.frame(patientID,age,diabetes,status) 运行结果

#查询age patientdata$age
|
因子 |
名义型变量 - 没有顺序之分的类别变量。如,diabetes(Type1、Type2)
有序型变量 - 表示一种顺序关系,而非数量关系。如,status(Poor、Improved、Excellent)
连续型变量 - 可以呈现为某个范围内的任意值,并同时表示了顺序和数量。如 age(25、34)
类别(名义型)变量和有序型变量在R中称为因子(factor),它决定了数据的分析方式以及如何进行视觉呈现。 函数factor()以一个整数向量的形式存储类别值,把变量编码成因子:
- 对于字符型向量:
- 因子的水平默认依字母顺序创建,status <- factor(status, ordered=TRUE)
- 也可以通过指定levels选项来覆盖默认排序,在数据中出现而未在参数中列举的数据将被设为缺失值
status <- factor(status, order=TRUE,levels=c("Poor", "Improved", "Excellent"))
- 对于数值型变量:
- 可以用levels和labels参数来编码成因子
sex <- factor(sex, levels=c(1, 2), labels=c("Male", "Female"))
-
|
#类别变量 diabetes <- c("Type1", "Type2", "Type1", "Type1")
diabetes <- factor(diabetes) 将此向量存储为(1, 2, 1, 1),并在内部将其关联为 1=Type1和2=Type2(具体赋值根据字母顺序而定)
#有序型变量 - 字符型向量
status <- c("Poor", "Improved", "Excellent", "Poor")
status <- factor(status, ordered=TRUE) 将向量编码为(3, 2, 1, 3),并在内部将这些值关联为1=Excellent、2=Improved以及3=Poor
#有序型变量 - 数值型向量 sex <- factor(sex, levels=c(1, 2), labels=c("Male", "Female"))
|
列表 |
一些对象(或成分)的集合。允许整合若干对象到单个对象名下。 可使用函数list()创建列表:
- 函数list()语法:mylist<-list(object1,object2,...)
- 参数说明: object1,object2 - 对象。可以是上面的任何数据结构。
- 为列表中的对象命名:mylist<-list(name1=object1,name2=pbject2,...)
|
|
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!