概念 - 数据结构

一,R语言介绍

  1. 用于管理R工作空间的函数

    

   2.  用于保存图形输出的函数

    

  3.   R中的下标不从0开始,而从1开始

 二, 创建数据集

 名词 解释   操作
 数据集  由数据构成的一个矩形数组,行表示观测,列表示变量  
 数据结构  用于存储数据对象类型(标量,向量,矩阵,数组,数据框和列表)  
  对象 指可以赋值给变量的任何事物。(包括常量,数据结构,函数,图形等)   
    向量 用于存储数值型,字符型或逻辑型数据的一维数组
  • 单个向量中的数据必须拥有相同的类型或模式(数值型,字符型或逻辑型)。同一向量中无法混杂不同模式的数据。
#创建数值型向量
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,...)

 

 

posted @ 2022-02-15 16:14  未必是小小  阅读(78)  评论(0编辑  收藏  举报