base包—aperm函数

描述

数组换位

通过排列数组的维数和可选地调整其大小来置换数组。

 

用法

aperm(a, perm, ...)
## Default S3 method:
aperm(a, perm = NULL, resize = TRUE, ...)
## S3 method for class 'table'
aperm(a, perm = NULL, resize = TRUE, keep.class = TRUE, ...)

 

参数


a:要转置的数组。

perm:下标置换向量,通常是整数1:n的置换,其中n是a的维数。当a有命名的dimnames时,它可以是长度为n的字符向量,给出这些名称的置换。
缺省情况下(当烫发长度为零时使用)是颠倒维度的顺序。

resize:一个标志,指示是否应该调整向量的大小以及重新排列其元素(默认为TRUE)。    

keep.class:表示结果是否与a属于同一类的逻辑。

...:方法的潜在的进一步参数。

 

数组A的转置版本,按数组perm指定的顺序排列下标。如果resize为TRUE,则重新排列数组,并排列其元素,也排列其dimnames;如果resize = FALSE则返回的对象具有与a相同的维度,并删除dimnames。在每种情况下,其他属性都是来自a。

函数t提供了一种更快、更方便的矩阵转置方法。

 

例子

# interchange the first two subscripts on a 3-way array x
x  <- array(1:24, 2:4)
xt <- aperm(x, c(2,1,3))
stopifnot(t(xt[,,2]) == x[,,2],
          t(xt[,,3]) == x[,,3],
          t(xt[,,4]) == x[,,4])

UCB <- aperm(UCBAdmissions, c(2,1,3))
UCB[1,,]
summary(UCB) # UCB is still a contingency table

x  <- array(1:24, 2:4) #创建维度为(2,3,4)的数组
xt <- aperm(x, c(2,1,3))#c(2,1,3)指把第一个维度和第二个维度换位置顺序,也就是要访问xt的元素,需要这样的三个下标:xt[3][2][4]。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值