R语言实战-数据类型-1(标量、向量、矩阵、数组)

0、基本数据类型

数值型num,包含整形、浮点型、双精度型等所有数值类型

字符型factor,字符和字符串,因子

布尔值logi,布尔型,T,TRUE,F,FALSE

1、标量

单个的数值、字符值或者布尔值

2、向量

函数c()

1 a<-c(1,2,3,4)
2 b<-c(‘aa‘,‘bb‘,‘cc‘)
3 c<-c(TRUE,FALSE,TRUE)

访问向量的元素

[]中括号中指定元素的下标

可以是单个数值,也可以是数值向量,还可以用x:y的形式指定一个范围

1 > d<-a[c(1,3)]
2 > d
3 [1] 1 3
4 > e<-a[2:4]
5 > e
6 [1] 2 3 4
7 > f<-a[3]
8 > f
9 [1] 3

3、矩阵

Usage

matrix(data = NA, nrow = 1, ncol = 1, byrow = FALSE,
       dimnames = NULL)
 1 matrix(1:21,nrow = 5)
 2      [,1] [,2] [,3] [,4] [,5]
 3 [1,]    1    6   11   16   21
 4 [2,]    2    7   12   17    1
 5 [3,]    3    8   13   18    2
 6 [4,]    4    9   14   19    3
 7 [5,]    5   10   15   20    4
 8 Warning message:
 9 In matrix(1:21, nrow = 5) :
10   data length [21] is not a sub-multiple or multiple of the number of rows [5]
11 > 

如上所述,矩阵创建自向量,可以通过指定行数来分配元素,默认是以列优先排列,可以通过指定byrow参数来改变元素排列方式

 1  matrix(1:21,nrow = 5,byrow = TRUE)
 2      [,1] [,2] [,3] [,4] [,5]
 3 [1,]    1    2    3    4    5
 4 [2,]    6    7    8    9   10
 5 [3,]   11   12   13   14   15
 6 [4,]   16   17   18   19   20
 7 [5,]   21    1    2    3    4
 8 Warning message:
 9 In matrix(1:21, nrow = 5, byrow = TRUE) :
10   data length [21] is not a sub-multiple or multiple of the number of rows [5]

矩阵元素的访问

 1 > x[2,]
 2 [1]  6  7  8  9 10
 3 > x[,2]
 4 [1]  2  7 12 17 22
 5 > x[2,2]
 6 [1] 7
 7 > x[3,3]
 8 [1] 13
 9 > x[c(1,3),]
10      [,1] [,2] [,3] [,4] [,5]
11 [1,]    1    2    3    4    5
12 [2,]   11   12   13   14   15
13 > x[c(1,3),c(2,4)]
14      [,1] [,2]
15 [1,]    2    4
16 [2,]   12   14
17 > x[1:3,]
18      [,1] [,2] [,3] [,4] [,5]
19 [1,]    1    2    3    4    5
20 [2,]    6    7    8    9   10
21 [3,]   11   12   13   14   15

4、数组

Usage

array(data = NA, dim = length(data), dimnames = NULL)
  1 > y<-array(1:100,dim = c(2,2,5,5),
  2 +          dimnames = list(
  3 +            c(‘a1‘,‘a2‘),
  4 +            c(‘b1‘,‘b2‘),
  5 +            c(‘c1‘,‘c2‘,‘c3‘,‘c4‘,‘c5‘),
  6 +            c(‘d1‘,‘d2‘,‘d3‘,‘d4‘,‘d5‘)))
  7 > y
  8 , , c1, d1
  9
 10    b1 b2
 11 a1  1  3
 12 a2  2  4
 13
 14 , , c2, d1
 15
 16    b1 b2
 17 a1  5  7
 18 a2  6  8
 19
 20 , , c3, d1
 21
 22    b1 b2
 23 a1  9 11
 24 a2 10 12
 25
 26 , , c4, d1
 27
 28    b1 b2
 29 a1 13 15
 30 a2 14 16
 31
 32 , , c5, d1
 33
 34    b1 b2
 35 a1 17 19
 36 a2 18 20
 37
 38 , , c1, d2
 39
 40    b1 b2
 41 a1 21 23
 42 a2 22 24
 43
 44 , , c2, d2
 45
 46    b1 b2
 47 a1 25 27
 48 a2 26 28
 49
 50 , , c3, d2
 51
 52    b1 b2
 53 a1 29 31
 54 a2 30 32
 55
 56 , , c4, d2
 57
 58    b1 b2
 59 a1 33 35
 60 a2 34 36
 61
 62 , , c5, d2
 63
 64    b1 b2
 65 a1 37 39
 66 a2 38 40
 67
 68 , , c1, d3
 69
 70    b1 b2
 71 a1 41 43
 72 a2 42 44
 73
 74 , , c2, d3
 75
 76    b1 b2
 77 a1 45 47
 78 a2 46 48
 79
 80 , , c3, d3
 81
 82    b1 b2
 83 a1 49 51
 84 a2 50 52
 85
 86 , , c4, d3
 87
 88    b1 b2
 89 a1 53 55
 90 a2 54 56
 91
 92 , , c5, d3
 93
 94    b1 b2
 95 a1 57 59
 96 a2 58 60
 97
 98 , , c1, d4
 99
100    b1 b2
101 a1 61 63
102 a2 62 64
103
104 , , c2, d4
105
106    b1 b2
107 a1 65 67
108 a2 66 68
109
110 , , c3, d4
111
112    b1 b2
113 a1 69 71
114 a2 70 72
115
116 , , c4, d4
117
118    b1 b2
119 a1 73 75
120 a2 74 76
121
122 , , c5, d4
123
124    b1 b2
125 a1 77 79
126 a2 78 80
127
128 , , c1, d5
129
130    b1 b2
131 a1 81 83
132 a2 82 84
133
134 , , c2, d5
135
136    b1 b2
137 a1 85 87
138 a2 86 88
139
140 , , c3, d5
141
142    b1 b2
143 a1 89 91
144 a2 90 92
145
146 , , c4, d5
147
148    b1 b2
149 a1 93 95
150 a2 94 96
151
152 , , c5, d5
153
154    b1  b2
155 a1 97  99
156 a2 98 100

数组array元素访问

 1 > y[1,2,3,4]
 2 [1] 71
 3 > y[1,2,1:2,2:3]
 4    d2 d3
 5 c1 23 43
 6 c2 27 47
 7 > y[1,c(1,2),2:4,c(1,3,5)]
 8 , , d1
 9
10    c2 c3 c4
11 b1  5  9 13
12 b2  7 11 15
13
14 , , d3
15
16    c2 c3 c4
17 b1 45 49 53
18 b2 47 51 55
19
20 , , d5
21
22    c2 c3 c4
23 b1 85 89 93
24 b2 87 91 95

PS:统一的下标定义方式,减少学习成本,赞一个!

再尝试使用列明访问

1 > y[c(‘a2‘),‘b2‘,‘c2‘,‘d2‘]
2 [1] 28
3 > y[c(‘a2‘),‘b2‘,‘c2‘,c(‘d2‘,‘d3‘)]
4 d2 d3
5 28 48 

PS:需要注意的是数组array定义时不支持按行填充!!

PS:以上所提及的标量、向量、矩阵、数组都仅仅支持相同的数据类型

原文地址:https://www.cnblogs.com/qianheng/p/10800384.html

时间: 2024-10-08 13:48:11

R语言实战-数据类型-1(标量、向量、矩阵、数组)的相关文章

R语言实战-数据类型-2(数据框dataframe)

5.数据框dataframe  data.frame 创建 data.frame() 1 > a<-c(1,2,3,4,5) 2 > b<-c('a','b','c','d','e') 3 > c<-c(T,F,F,F,T) 4 > x<-data.frame(a,b,c) 5 > x 6 a b c 7 1 1 a TRUE 8 2 2 b FALSE 9 3 3 c FALSE 10 4 4 d FALSE 11 5 5 e TRUE PS:子元素

《r语言实战》菜鸟学习笔记(二)

这一部分将要说明R语言的数据类型以及数据输入方面的内容 因子 R语言中变量可以归结为名义型,有序型和连续变量. 名义型 :没有顺序之分的变量.如 天气 阴晴等 有序型:有顺序关系,但不是数量关系. 心情好 坏 适中等 连续型:就是同是有数量和顺序.当然这里的连续型并不是数学中的连续,也包括离散数据 名义型和有序型在R中称为因子. 下面介绍factor()函数 diabetes <- c("Type1", "Type2", "Type1",

《R语言实战》学习笔记seventh

由于在准备软考中级数据库系统工程师外加巩固SQL Server 2012,所以拖了好久一直没继续学R 下去 所以今天重开R 的战事 这次是关于基本统计分析的内容,即关于用于生成基本的描述性统计量和推断统计量的R 函数 首先,将着眼于定量变量的位置和尺度的衡量方式 然后将是生成类别型变量的频数表和列联表的方法(以及连带的卡方检验) 接下来将考察连续型和有序型变量相关系数的多种形式 最后转而通过参数检验(t检验)和非参数检验(Mann-Whitney U检验.Kruskal-Wallis检验)方法研

《R语言实战》(中文完整版)pdf

下载地址:网盘下载 基本介绍 编辑 原作名: R in Action[2] 作者: Robert I. Kabacoff 译者: 高涛 / 肖楠 / 陈钢 出版社: 人民邮电出版社 出版年: 2013-1 页数: 388 定价: 79.00元 装帧: 平装 ISBN: 978-711-529-990-1 内容简介 编辑 数据时代已经到来,但数据分析.数据挖掘人才却十分短缺.由于"大数据"对每个领域的决定性影响,相对于经验和直觉,在商业.经济及其他领域中基于数据和分析去发现问题并作出科学

R电子书资料《学习R》+《R语言实战第2版》+《R数据科学》学习推荐

如果没有任何编程基础,想学习如何使用R,并进行练习,建议大家看看<学习R>电子书和代码资料,上半部分主要介绍R的技术细节和使用技巧,下半部分更侧重实践,展示了从输入数据到发布结果这一标准的数据分析流程. <学习R>电子书,帮助学习编写简单的R程序,知道R语言能做什么: 1.使用向量.数组.列表.数据框和字符串等数据类型 2.掌握条件语句以及分支和循环控制语句 3.应用R的扩展包,将你自己的工作成果打包发给其他人 4.清理从各种来源导入的数据 5.通过可视化和汇总统计理解数据 6.使

R语言实战(五)方差分析与功效分析

本文对应<R语言实战>第9章:方差分析:第10章:功效分析 ==================================================================== 方差分析: 回归分析是通过量化的预测变量来预测量化的响应变量,而解释变量里含有名义型或有序型因子变量时,我们关注的重点通常会从预测转向组别差异的分析,这种分析方法就是方差分析(ANOVA).因变量不只一个时,称为多元方差分析(MANOVA).有协变量时,称为协方差分析(ANCOVA)或多元协方差分析

R入门&lt;三&gt;-R语言实战第4章基本数据管理摘要

入门书籍:R语言实战 进度:1-4章 摘要: 1)实用的包 forecast:用于做时间序列预测的,有auto.arima函数 RODBC:可以用来读取excel文件.但据说R对csv格式适应更加良好,相应的导入导出均较为方便(read.table, write等) reshape:目前用到rename函数,可以方便的对数据变量重命名 fCalendar:在日期输入处提及,据说对日期运算有奇效,但无具体示例.同理如lubridate sqldf:在数据选取处提及,可代替subset以及各种whe

R语言实战(四)回归

本文对应<R语言实战>第8章:回归 回归是一个广义的概念,通指那些用一个或多个预测变量(也称自变量或解释变量)来预测响应变量(也称因变量.效标变量或结果变量)的方法.通常,回归分析可以用来挑选与相应变量相关的解释变量,可以描述两者的关系,也可以生成一个等式,通过解释变量来预测响应变量. 回归分析的各种变体 回归类型 用途 简单线性 用一个量化的解释变量预测一个量化的响应变量 多项式 用一个量化的解释变量预测一个量化的响应变量,模型的关系是n阶多项式 多元线性 用两个或多个量化的解释变量预测一个

《数据挖掘:R语言实战》

<数据挖掘:R语言实战> 基本信息 作者: 黄文    王正林 丛书名: 大数据时代的R语言 出版社:电子工业出版社 ISBN:9787121231223 上架时间:2014-6-6 出版日期:2014 年6月 开本:16开 页码:292 版次:1-1 所属分类:计算机 > 软件与程序设计 > 综合 > 高级程序语言设计 更多关于>>><数据挖掘:R语言实战> 内容简介 书籍 计算机书籍 数据挖掘技术是当下大数据时代最关键的技术,其应用领域及前景