在R数据帧列中随机分布向量
我一定错过了一件很明显的事情 我有一个说的向量在R数据帧列中随机分布向量,r,R,我一定错过了一件很明显的事情 我有一个说的向量 vec=c(“v1”、“v2”、“v3”)我想沿着数据帧中的一列分布这个向量 Girth Height Volume newcolumn 8.3 70 10.3 V1 8.6 65 10.3 V2 8.8 63 10.2 V3 10.5 72 16.4 V1 10.7 81 18.8 V2 10.8 83 19
vec=c(“v1”、“v2”、“v3”)
我想沿着数据帧中的一列分布这个向量
Girth Height Volume newcolumn
8.3 70 10.3 V1
8.6 65 10.3 V2
8.8 63 10.2 V3
10.5 72 16.4 V1
10.7 81 18.8 V2
10.8 83 19.7 V3
11 66 15.6 V1
11 75 18.2 V2
10.8 83 19.7 V3
11 66 15.6 V1
11 75 18.2 V2
11.1 80 22.6 V3
提前感谢。如果行数不是3的倍数,我们可以使用
rep
来确保它也可以工作
df$newcolumn <- vec
df
#> Girth Height Volume newcolumn
#> 1 8.3 70 10.3 v1
#> 2 8.6 65 10.3 v2
#> 3 8.8 63 10.2 v3
#> 4 10.5 72 16.4 v1
#> 5 10.7 81 18.8 v2
#> 6 10.8 83 19.7 v3
#> 7 11.0 66 15.6 v1
#> 8 11.0 75 18.2 v2
#> 9 10.8 83 19.7 v3
#> 10 11.0 66 15.6 v1
#> 11 11.0 75 18.2 v2
#> 12 11.1 80 22.6 v3
df$newcolumn <- rep(vec, length.out = nrow(df))
df$newcolumn您需要以某种方式从vec
回收值
cbind
将执行此操作,并生成所需的输出
cbind(df, vec)
Girth Height Volume vec
1 8.3 70 10.3 v1
2 8.6 65 10.3 v2
3 8.8 63 10.2 v3
4 10.5 72 16.4 v1
5 10.7 81 18.8 v2
6 10.8 83 19.7 v3
7 11.0 66 15.6 v1
8 11.0 75 18.2 v2
9 10.8 83 19.7 v3
10 11.0 66 15.6 v1
11 11.0 75 18.2 v2
12 11.1 80 22.6 v3
也就是说,你的题目是关于“随机分配向量”。要做到这一点,你需要
set.seed(123)
df$newcol <- sample (vec, size = nrow(df), replace = TRUE)
Girth Height Volume newcol
<dbl> <dbl> <dbl> <chr>
1 8.3 70 10.3 v3
2 8.6 65 10.3 v3
3 8.8 63 10.2 v3
4 10.5 72 16.4 v2
5 10.7 81 18.8 v3
6 10.8 83 19.7 v2
7 11 66 15.6 v2
8 11 75 18.2 v2
9 10.8 83 19.7 v3
10 11 66 15.6 v1
11 11 75 18.2 v2
12 11.1 80 22.6 v2
set.seed(123)
完全正确!我需要的是汉克斯
cbind(df, vec)
Girth Height Volume vec
1 8.3 70 10.3 v1
2 8.6 65 10.3 v2
3 8.8 63 10.2 v3
4 10.5 72 16.4 v1
5 10.7 81 18.8 v2
6 10.8 83 19.7 v3
7 11.0 66 15.6 v1
8 11.0 75 18.2 v2
9 10.8 83 19.7 v3
10 11.0 66 15.6 v1
11 11.0 75 18.2 v2
12 11.1 80 22.6 v3
set.seed(123)
df$newcol <- sample (vec, size = nrow(df), replace = TRUE)
Girth Height Volume newcol
<dbl> <dbl> <dbl> <chr>
1 8.3 70 10.3 v3
2 8.6 65 10.3 v3
3 8.8 63 10.2 v3
4 10.5 72 16.4 v2
5 10.7 81 18.8 v3
6 10.8 83 19.7 v2
7 11 66 15.6 v2
8 11 75 18.2 v2
9 10.8 83 19.7 v3
10 11 66 15.6 v1
11 11 75 18.2 v2
12 11.1 80 22.6 v2