R数组、列表、数据框、因子

来源:互联网 发布:中南工程咨询设计 知乎 编辑:程序博客网 时间:2024/06/08 20:37

基础知识

1.数组

> A <- array(1:24,c(3,4,2)) #生成一个3 x 4 x 2的数组> A, , 1     [,1] [,2] [,3] [,4][1,]    1    4    7   10[2,]    2    5    8   11[3,]    3    6    9   12, , 2     [,1] [,2] [,3] [,4][1,]   13   16   19   22[2,]   14   17   20   23[3,]   15   18   21   24> A[2,2,2] #数组索引和矩阵、向量类似[1] 17> > dim(A) #获取维数[1] 3 4 2> dim(A) = 24 #改变数组的维度  变为向量> A [1]  1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19[20] 20 21 22 23 24>> dim(A) = c(4,6) #改变数组维度 变为 4 x 6 矩阵> A     [,1] [,2] [,3] [,4] [,5] [,6][1,]    1    5    9   13   17   21[2,]    2    6   10   14   18   22[3,]    3    7   11   15   19   23[4,]    4    8   12   16   20   24> 

2.列表

> list1 = list(name='R Programming',action='learn',content='list')> list1$name[1] "R Programming"$action[1] "learn"$content[1] "list"> list1[1] #获取列表第一项内容$name[1] "R Programming"> list1['action'] #获取列表里'action'项对应的内容 注意加引号$action[1] "learn"> list1$content #获取列表里content属性的内容[1] "list"> > length(list1) #获取列表属性个数[1] 3> mode(list1) #获取数据类型[1] "list"> names(list1) #获取列表的属性[1] "name"    "action"  "content"> 

3.数据框

> #学号> number <- paste(2017,3098:3118,sep="")> #数学分析成绩> x1 <- round(runif(21,min=45,max=97))> #高等代数成绩> x2 <- round(rnorm(21,mean=75,sd=10))> x2[which(x2>100)] <- 100> #解析几何成绩> x3 <- round(rnorm(21,mean=84,sd=10))> x3[which(x3>100)] <- 100> #考试成绩数据框> data <- data.frame(number,x1,x2,x3) #组合数据框> data     number x1 x2  x31  20173098 85 76  762  20173099 71 70  863  20173100 62 89 1004  20173101 84 73  765  20173102 75 97 1006  20173103 92 86  837  20173104 91 70  808  20173105 76 79  899  20173106 54 62  9310 20173107 60 72  8111 20173108 48 79  7912 20173109 75 91  6613 20173110 66 83  9314 20173111 60 74 10015 20173112 64 73 10016 20173113 83 64  9017 20173114 64 70  8518 20173115 62 75  8519 20173116 68 86  8120 20173117 84 84  8121 20173118 90 76 100

4.因子

> x <- c('Female','Male','Male','Female','Female')> > x[1] "Female" "Male"   "Male"   "Female" "Female">> f =factor(x) #将x按因子水平分类> f[1] Female Male   Male   Female FemaleLevels: Female Male> > levels(f)  #获取f的因子水平[1] "Female" "Male"  > 
原创粉丝点击