【问题标题】:Shuffle the columns of a matrix indepently using apply or plyr使用 apply 或 plyr 独立地打乱矩阵的列
【发布时间】:2013-03-20 21:54:21
【问题描述】:

我在 R 中有一个矩阵,并且不需要执行 for 循环,我想随机打乱行,但对于每一列都是独立的。

即,

A=cbind(c(1,2,3),c(4,5,6))

我想要一个新矩阵,让我们说 A.shuffle,其中第 1 列 c(1,2,3) 和第 2 列 c(4,5,6) 是独立随机随机洗牌的。

例如,

A.shuffle = cbind(c(1,3,2), c(6,4,5))

即,在第 1 列中,随机洗牌改变了 2 和 3 的位置,在第 2 列中,不同的随机洗牌将位置 6 更改为 4、4 更改为 5 和 5 更改为 6。

什么是在 R 中不需要循环的好方法?

谢谢!

【问题讨论】:

  • apply(A, 2, sample)

标签: r plyr apply sample


【解决方案1】:

这个怎么样?

> apply(A, 2, sample)

【讨论】:

  • apply(A, 2, sample) 也同样有效,并且具有更短的优势。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-30
  • 1970-01-01
  • 1970-01-01
  • 2012-09-05
  • 1970-01-01
相关资源
最近更新 更多