R语言入门:矩阵和数组的运算

本文介绍了R语言中矩阵和数组的创建、索引及计算。讲解了如何通过`array`和`dim()`函数创建矩阵和多维数组,并进行行列命名。此外,还阐述了矩阵的索引方式,如获取特定行、列的元素,以及矩阵的算术运算,包括元素级加减乘除。
摘要由CSDN通过智能技术生成

一.创建矩阵和数组

首先在这一节的教程开始之前,我们需要清楚的是矩阵是特殊的数组,因为矩阵属于二维数组,而数组可以是一维,三维,甚至n维。

比如说我们要创建一个元素为20个,4行5列的矩阵,则输入以下代码:

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

这样我们的一个矩阵就创建完成了。为了更加详细地表示出有多少航和有多少列,则可以使用参数nrow和ncol,也可以像上面的例子一样不加,下面是加上这两个参数的例子:

> v<-1:30
> w<-matrix(v,nrow=10,ncol = 3)
> w
      [,1] [,2] [,3]
 [1,]    1   11   21
 [2,]    2   12   22
 [3,]    3   13   23
 [4,]    4   14   24
 [5,]    5   15   25
 [6,]    6   16   26
 [7,]    7   17   27
 [8,]    8   18   28
 [9,]    9   19   29
[10,]   10   20   30

我们可以看到这两个矩阵都是按照列来排列数字的,每一列从上到下数字从小到大,但我们能不能够将数字进行按行排列呢?答案显然是可以的,只需要在后面就上参数byrow=T就可以了。代码如下所示:

> w<-matrix(v,10,3,byrow = T)
> w
      [,1] [,2] [,3]
 [1,]    1    2    3
 [2,]    4    5    6
 [3,]    7    8    9
 [4,]   10   11   12
 [5,]   13   14   15
 [6,]   16   17   18
 [7,]   19   20   21
 [8,]   22   23   24
 [9,]   25   26   27
[10,]   28   29   30

当然,我们能不能够将每行每列都进行命名呢,这样一个矩阵旁边全是数字看起来未免也太繁琐了,下面的dimnames()命名函数则给予了我们这个机会。我们首先将每行每列的名称写出来,然后再利用dimnames()函数和list列表将这些名字输入到矩阵当中即可:

> rowname=c("R1","R2","R3",
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值