R語言的資料結構型別

2021-10-08 07:06:12 字數 1857 閱讀 3739

r語言的資料結構中比較常用有以下五種分別為

1.向量

2矩陣3.陣列

4資料框

5列表(一)向量

向量是用於儲存數值型、字元型或邏輯型資料的一維陣列。執行組合 功能的函式c()可用來建立向量。各類向量如下例所示:

a <- c(1, 2, 5, 3, 6, -2, 4)

b <- c("one", "two", "three")

c <- c(true, true, true, false, true, false)

(二)矩陣

矩陣是乙個二維陣列,只是每個元素都擁有相同的模式(數值型、字 符型或邏輯型)。可通過函式matrix()建立矩陣。具體的建立方式如下所示:

y<-matrix(1:20,nrow=5,ncol=4)#建立5*4的矩陣

ycells<-c(1,26,24,68)

rnomes<-c("r1","r2")

cnomes<-c("c1","c2")

mymatrix<-matrix(cells,nrow=2,ncol=2,byrow=false,dimnames=list(rnomes,cnomes))

mymatrix

x<-matrix(1:10,nrow=2)

xx[2,]#矩陣的第二行資料

x[1,4]#舉證第一行第四列的資料

x[1,c(4,5)]#表示的是第一行第四和第五列的資料

(三)陣列

陣列(array)與矩陣類似,但是維度可以大於2。陣列可通過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))

z(四)資料框

由於不同的列可以包含不同模式(數值型、字元型等)的資料,資料 框的概念較矩陣來說更為一般。

#生成病人資訊的資料框

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)

patientdata

patientdata[1:2]#資料框中的第一和第二個變數的資料

patientdata[3:4]

patientdata$age#資料集中的age變數

(五)列表

列表(list)是r的資料型別中最為複雜的一種。一般來說,列表就是 一些物件(或成分,component)的有序集合。列表允許你整合若干 (可能無關的)物件到單個物件名下。例如,某個列表中可能是若干 向量、矩陣、資料框,甚至其他列表的組合。可以使用函式list() 建立列表:

g<-"my first list"

h<-c(25,26,18,39)

j<-matrix(1:10,nrow=5)

k<-c("one","two","three")

mylist<-list(title=g,ages=h,j,k)

mylist

R語言 資料結構

向量 my vector c 1,2,8,9,16 my vector 2 4 矩陣 矩陣行列命名,預設先排列 cells c 1,36,24,12 row names c r1 r2 col names c c1 c2 my matrix1 matrix cells,nrow 2,ncol 2,d...

R語言資料結構

字元 character 數值 numeric real numbers 整數 integer 複數 complex 邏輯 logical tf必須大寫 x true 常用方法 名稱維度 型別長度 建立 vector x vector character length 10 this is anno...

R語言 資料結構

向量vector本質作為一維陣列可以包含數字,字元,布林值 a c 1,2,5,3,6,2,4 b c one two three c c true,true,true,false,true,false 矩陣matrix 二維陣列 構造需要通過matrix方法實現 x matrix 1 20,nro...