R语言中的数据结构
2016-03-08 17:37
316 查看
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,]123 [2,]456 >x=matrix(data=1:6,nrow=2,ncol=3,byrow=F) >x [,1][,2][,3] [1,]135 [2,]246
数组:数组可以使二维数组,也可以是多维数组
数组(包括向量和矩阵)。数组可以用来储存数值型(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 applebananapear male111210 female999 ,,Tue applebananapear male8157 female3510 ,,Wed applebananapear male9913 female12129 ,,Thu applebananapear male1159 female998
第二种:列表。
列表是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.01.01.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 fruitpricebuy 1apple1.0TRUE 2banana1.0FALSE 3pear1.5FALSE
同样的,我们可以使用x$fruit、x$price和x$buy来调用这三列数据。
相关文章推荐
- 阿里巴巴实习内推二面经验总结(客户端开发岗)
- 2015年大二上-数据结构-查找-2-(1)-HashTable
- 数据结构笔记——
- 【数据结构】线性表(数组实现)
- 小蚂蚁学习数据结构(35)——直接插入排序
- 简单数据结构(三)栈
- 数据结构与算法学习笔记(四)
- 数据结构之“Ordered List and Sorted List”(六)
- 数据结构与算法笔记 —— 向量
- 数据结构与算法笔记 —— 排序算法及代码实现
- bzoj1012[最大数]
- 《数据结构》链栈
- 《数据结构》顺序栈
- 最小堆建立
- 数据结构复习提纲
- PHP实现栈数据结构
- 数据结构-----线性表学习笔记
- 【数据结构】堆
- 【计算机基础】堆和栈的区别(非数据结构中的堆和栈)
- 【数据结构】栈