R语言中的数据结构

R语言的数据结构分为:向量,数组,矩阵,数据框

1,向量:

vector(mode = "logical", length = 0)

这里,mode参数表示的是该向量储存数据的类型,length表示该向量的长度。
ex:x<-vector(1:10)y<-c("a","b","c","d")

2,矩阵:
matrix(data = NA, nrow = 1, ncol = 1, byrow = FALSE,dimnames = NULL)

这里data是该向量要储存的数据,nrow和ncol,顾名思义是指这个矩阵有多少行和多少列,需要指出的是,data的个数需要等于nrow乘以ncol。byrow表示数据是否以行的方式进行排列,我们会在下面的例子中阐述。dimnames与array中的dimnames一致。

> x = matrix(data=1:6,nrow=2,ncol=3,byrow=T)
> x
     [,1] [,2] [,3]
[1,]    1    2    3
[2,]    4    5    6
> x = matrix(data=1:6,nrow=2,ncol=3,byrow=F)
> x
     [,1] [,2] [,3]
[1,]    1    3    5
[2,]    2    4    6

数组:数组可以使二维数组,也可以是多维数组

数组(包括向量和矩阵)。

数组可以用来储存数值型(numeric)、逻辑型(logical)和字符型(character)三种类型的数据。

例如:

储存字符型数据 
> x = array(rep("a",6),dim=c(2,3))
> x
     [,1] [,2] [,3]
[1,] "a"  "a"  "a" 
[2,] "a"  "a"  "a" 

 例子2> x = array(rpois(24,10),dim=c(2,3,4),dimnames=list(c("male","female"),c("apple","banana","pear"),c("Mon","Tue","Wed","Thu")))

> x
, , Mon

       apple banana pear
male      11     12   10
female     9      9    9

, , Tue

       apple banana pear
male       8     15    7
female     3      5   10

, , Wed

       apple banana pear
male       9      9   13
female    12     12    9

, , Thu

       apple banana pear
male      11      5    9
female     9      9    8



第二种:列表。

列表是R语言中使用非常广泛的一种结构,他的主要特点就是不对齐的数据格式。是用list函数进行创建。

例如:

> x = list(fruit=c("apple","banana","pear"),price=c(1,1,1.5),market=c("newabest"))
> x
$fruit
[1] "apple"  "banana" "pear"  

$price
[1] 1.0 1.0 1.5

$market
[1] "newabest"

第三种:数据框。


数据框实际上是一种非常实用的数据结构。它实际上是一个表,这个表的列与列之间可以储存不同的数据类型,但是同一列必须是同一种数据结构。如:


> fruit=c("apple","banana","pear")
> price=c(1,1,1.5)
> buy=c(T,F,F)
> x=data.frame(fruit,price,buy)
> x
   fruit price   buy
1  apple   1.0  TRUE
2 banana   1.0 FALSE
3   pear   1.5 FALSE

同样的,我们可以使用x$fruit、x$price和x$buy来调用这三列数据。

 
 
原文地址:https://www.cnblogs.com/yupeter007/p/5254901.html