R 创建带有标签的随机数序列
我想生成随机概率数,每个随机概率数都有一个标签。例如,通过生成3个数字,我们有三个标签:R 创建带有标签的随机数序列,r,matrix,label,assign,R,Matrix,Label,Assign,我想生成随机概率数,每个随机概率数都有一个标签。例如,通过生成3个数字,我们有三个标签: n <- 3 prob <- runif(n,0,1) [1] 0.3199110 0.2809717 0.6234215 lab <- LETTERS[1:n] [1] "A" "B" "C" assignnn <- data.frame(lab , prob) lab prob 1 A 0.319911
n <- 3
prob <- runif(n,0,1)
[1] 0.3199110 0.2809717 0.6234215
lab <- LETTERS[1:n]
[1] "A" "B" "C"
assignnn <- data.frame(lab , prob)
lab prob
1 A 0.3199110
2 B 0.2809717
3 C 0.6234215
您可以使用match:
资料
您可以使用match:
资料
这就是你要找的吗 设置n=3 n 0.16310310.5345181 0.1631039 0.6475393 0.16310310.1631031 创建一个矩阵 matrixsam,2,3 > [,1] [,2] [,3] > [1,] 0.1631039 0.1631039 0.1631039 > [2,] 0.5345181 0.6475393 0.1631039 使用元素名称的矩阵 matrixnamessam,2,3 > [,1] [,2] [,3] >[1,]A >[2,]cba
由v0.3.0于2020年6月27日创建,这就是您想要的吗 设置n=3 n 0.16310310.5345181 0.1631039 0.6475393 0.16310310.1631031 创建一个矩阵 matrixsam,2,3 > [,1] [,2] [,3] > [1,] 0.1631039 0.1631039 0.1631039 > [2,] 0.5345181 0.6475393 0.1631039 使用元素名称的矩阵 matrixnamessam,2,3 > [,1] [,2] [,3] >[1,]A >[2,]cba 由v0.3.0于2020-06-27创建
sam <- sample(prob , 6 , replace = TRUE)
[1] 0.2809717 0.3199110 0.2809717 0.3199110 0.2809717 0.6234215
mat <- matrix(sam,2,3)
[,1] [,2] [,3]
[1,] 0.2809717 0.2809717 0.2809717
[2,] 0.3199110 0.3199110 0.6234215
[,1] [,2] [,3]
[1,] B B B
[2,] A A C
mat[] <- assignnn$lab[match(mat, assignnn$prob)]
mat
# [,1] [,2] [,3]
#[1,] "C" "A" "A"
#[2,] "C" "B" "C"
set.seed(1235)
n <- 3
prob <- runif(n,0,1)
lab <- LETTERS[1:n]
assignnn <- data.frame(lab , prob)
assignnn
# lab prob
#1 A 0.24259237
#2 B 0.51535594
#3 C 0.09942167
sam <- sample(prob , 6 , replace = TRUE)
mat <- matrix(sam,2,3)
mat
# [,1] [,2] [,3]
#[1,] 0.09942167 0.2425924 0.24259237
#[2,] 0.09942167 0.5153559 0.09942167