【发布时间】:2018-12-17 06:10:05
【问题描述】:
在我的脚本中是否有可能获得d[[x]]“空”。我尝试使用else 进行操作,但它不起作用。
else怎么写才能给出校验零的结果?
for (x in 1:licznik3)
{
if(a[[x]] > d[[x]])
{
out3[[x]] <- wspolne3[[x]]
}
else (a[[x]] < d[[x]])
{
out3[[x]] <- NA
}
}
变量:
> a
[1] 0.1
> d
numeric(0)
> licznik3
[1] 16
d[[x]] 中的错误:下标超出范围
例子:
我有 3 个循环。
如果a[[x]] 大于d[[x]]
这个值转到out3
下一个循环检查类似的条件。
我的问题是在第二个循环中(显示代码)d[[x]] 可以为空(在前一个循环中没有值大于a[[x]])
那我们有办法了
> a
[1] 0.1
> d
numeric (0)
【问题讨论】:
-
如果你不提供一个工作示例,没有人可以帮助你,其中向量
licznik3和wspolne3是明确的。 -
请提供minimal reproducible example。很难弄清楚你在问什么。例如,短语“它不熄灭”没有明确的含义。 “它”是什么,“它”不能“走出去”是什么意思?
-
已编辑帖子中的示例
-
您的示例对某些人有所帮助,但仍不清楚预期的输出是什么。如果
d[[x]]未定义会发生什么?为什么不简单地检查d在循环之前 如果d为空则不执行循环?