我试图使用R编程语言制作“自引用”网格。例如,我创建了以下(非自引用)网格:
var_1 <- rnorm(1000,8,5)
var_2 <- rnorm(1000,8,5)
var_3 <- rnorm(1000,8,5)
var_4 <- rnorm(1000,8,5)
var_5 <- rnorm(1000,8,5)
var_6 <- rnorm(1000,8,5)
var_7 <- rnorm(1000,8,5)
frame_a <- data.frame(var_1, var_2, var_3, var_4, var_5, var_6, var_7)这样做是可行的:
head(frame_a)
var_1 var_2 var_3 var_4 var_5 var_6 var_7
1 11.106978 6.045635 12.059918 14.576642 6.6631061 2.4308557 4.210330
2 5.356593 9.066030 15.324603 4.170090 7.9821328 0.7412383 8.561553
3 16.971664 5.172987 6.501061 2.827789 0.5317087 6.2078346 9.151058
4 1.903000 7.183025 11.524599 12.188365 9.2445369 9.5063593 3.741548
5 11.744789 10.077375 4.740652 3.738349 6.1231457 5.3983903 -4.863340
6 14.151094 8.234436 8.203216 14.722724 9.6634154 -0.7918751 14.080428现在,我正在尝试建立一个“自引用网格”--即具有特定条件的网格。对于此网格中的每一行:
F 211
这就是我试图建立这样一个网格。
var_1 <- rnorm(1000,8,5)
var_2 <- rnorm(1000,var_1,5)
var_3 <- rnorm(1000,8,5)
var_4 <- rnorm(1000,var_3,5)
var_5 <- rnorm(1000,6,5)
var_6 <- rnorm(1000,var_5,5)
var_7 <- rnorm(1000,var_6,5)
frame_b <- data.frame(var_1, var_2, var_3, var_4, var_5, var_6, var_7)这一守则有效,但“条件”没有得到尊重:
> head(frame_b)
var_1 var_2 var_3 var_4 var_5 var_6 var_7
1 5.9667356 1.518180 9.316051 3.192931 -1.358661 -0.05681164 -5.3893074
2 8.4478170 11.902876 9.588589 -1.220872 6.091870 9.81611979 4.9043055
3 13.6396693 8.554241 9.017625 10.840609 -4.548760 0.22775771 -5.8313070
4 13.4776003 19.735430 4.674371 2.144886 4.933787 -3.13381274 -0.5747767
5 6.3300270 -1.968539 4.413483 5.490492 4.866916 3.72772243 10.1688481
6 0.3662306 -1.633712 6.142054 7.236065 12.506673 10.17450918 7.7536291例如,在第一行中: var_2不大于var_1。
有人能告诉我如何纠正这个错误吗?
谢谢
发布于 2021-08-06 01:04:44
我试图根据@rawr提供的答案发布一个答复:
var_1 <- runif(1000, 0, 100)
var_2 <- runif(1000, var_1, 100)
var_3 <- runif(1000, 0, 100)
var_4 <- runif(1000, var_3, 100)
var_5 <- runif(1000, 0, 100)
var_6 <- runif(1000, var_5, 100)
var_7 <- runif(1000, var_6, 100)
frame_3 <- data.frame(var_1, var_2, var_3, var_4, var_5, var_6, var_7)
head(frame_3)
var_1 var_2 var_3 var_4 var_5 var_6 var_7
1 16.824184 42.45956 26.68427 41.69108 66.104877 67.29392 92.26807
2 5.154861 74.42316 32.87011 73.93285 3.206936 62.48352 63.06708
3 35.263069 48.56498 34.64460 39.81641 12.816591 13.17151 72.77144
4 21.175502 27.04440 18.04221 64.40537 34.614670 65.89940 92.80989
5 17.156617 86.05252 10.88137 84.53697 86.133523 99.04071 99.55816
6 32.293821 89.77986 26.29747 49.53139 76.262548 81.88121 89.91402这是正确的吗?
谢谢
https://stackoverflow.com/questions/68674796
复制相似问题