r - 如何创建一个能够区分具有相同值的两个对象的条件?
问题描述
我正在尝试创建一个代码,从两个对象中进行采样,然后根据采样的值运行条件。我的问题是,在采样的对象中,它们可能具有相同的值。因此,虽然只有其中一个对象被采样,但我的条件语句似乎适用于所有具有相同值的对象......(我希望这是有道理的)。
这是我试图用我的实际模型做的一个非常简化的表示:
x1=5
x2=5
x = sample(c(x1,x2), size=1, replace=TRUE, prob=(c(0.9,0.1)))
if(x==x1){print("yes")} else{print("hmm")}
if(x==x2){print("no")} else {print("it worked!")}
在我的实际模型中,对象不太可能具有相同的值,但这是可能的。所以我想知道是否有办法避免上述问题,这样即使对象采用的值可能相同,条件语句仍然能够具体区分一个特定对象。
谢谢
解决方案
What stops you from sampling the object name, then later evaluating it? For example:
x1=5
x2=5
x = sample(c("x1","x2"), size=1, replace=TRUE, prob=(c(0.9,0.1)))
consider_x <- function(y){
print(paste0(y," was sampled."))
print(paste0("Its value is ",get(y)))
}
consider_x(x)
[1] "x2 was sampled."
[1] "Its value is 5"
推荐阅读
- spring-boot - 如何使用 JMS 和 AMQP 1.0 设置 RabbitMQ?
- java - java.lang.NoClassDefFoundError:tomcat 8 eclipse 中的 LLogger 错误
- python-3.x - 如何使用 Python 3.8 将字节流(二进制形式)转换为 CSV 文件?
- pyomo - gurobi 输出流在所有输出写入之前关闭
- servicenow-rest-api - 如何将值列表添加到 API url(现在服务)?
- python - 有没有办法用固定的步骤优化函数阈值?
- python - 如何在 jenkins docker 容器中使用 shell 运行 python 测试
- reactjs - 根据道具更改状态类型 - React Typescript
- sql - 如何将表列的评论权授予Oracle中的数据库用户?
- mysql - SQL 查询:根据其他列向列添加值